Skip to main content

database layer for my personal server.

Project description

lapa_database_structure

about

database structure layer for my personal server.

installation

pip install lapa_database_structure

usage

to add a new database

  • create a package with package name as database name.

to add a new schema

  • add package in database_name package with schema name as package name.

to add a new table

  • create /database_name/schema_name/tables.py file if not already created.
  • create class corresponding to your new table add in /database_name/schema_name/tables.py file.

to add default data in table

  • append row objects containing your default data to the data_to_insert list inside the /database_name/schema_name/tables.py file.

do not forget to add new database_names, schema_names and/or table_names to main.py enums to make it accessible through api calls.

do not forget to clone changes to all testing database.

configs

None

env

  • python>=3.12.0

changelog

v0.0.14

lapa and lapa_testing

  • authentication
    • remove device table and remove references of device in user_device_session (old name).
    • add session_expiry_time in user_session table.
  • public
    • add table for testing.

v0.0.13

lapa and lapa_testing

  • authentication
    • naming convention changes to tables and columns.
    • make user_id unique in user_credential table. (1 user can have only 1 username-password)
    • make user_id unique in user_profile table. (1 user can have only 1 profile)
    • add auto increment to user_log_id and user_device_session_id. (primary keys)
    • introduce device_id in device table.
    • assign foreign key to user_id in user_device_session table.
    • introduce foreign key device_id to user_device_session table.
    • make device_encrypted_mac_address unique in device table. (unencrypted mac address is supposed to be unique)
    • make user_device_session_hashed_refresh_token unique in device table. (plaintext refresh token is supposed to be unique)

v0.0.12

  • removed UserAuthentication
  • renamed user_authentication -> credential
  • new table device and user_device_session

v0.0.11

  • removed salt authentication_username_salt column

v0.0.10

  • renamed authentication_username_salt.
  • added local_string_database_name in each database.
  • removed main.py file and its enums.

v0.0.9

  • rename authentication_username_hashed_access_token and authentication_username_hashed_refresh_token.
  • update enum in main.py.

v0.0.8

  • Overhauled authentication schema, again.

v0.0.7

  • Overhauled authentication schema,
  • introducing new tables: User, UsernameAuthentication, UserProfile, AuthenticationType, UserAccountStatus, UserLog, and UserLogStatus.

v0.0.6

  • changed db structure
  • removed game db
  • added testing db which is clone of lapa

v0.0.5

  • file_storage -> public -> File
    • change file_extension to file_content_type.
    • file_system_relative_path default change from "." to "".

v0.0.4

  • authentication database added with the below tables
    • user
    • user_validation_status
    • user_registration
    • hashing_algorithm

v0.0.3

  • Changed package name to lapa_database_structure.

v0.0.2

  • Update table for file_storage -> File.

v0.0.1

  • initial implementation.

Feedback is appreciated. Thank you!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lapa_database_structure-0.0.14.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file lapa_database_structure-0.0.14.tar.gz.

File metadata

File hashes

Hashes for lapa_database_structure-0.0.14.tar.gz
Algorithm Hash digest
SHA256 833f43946f571ac9078ceb68b60a12b3a61f6566f6e8c53b08e72e2615dcc878
MD5 b3e2cd72ad732a88637b7ef0e948a904
BLAKE2b-256 f6444d5e0f8ed0d1d6960c9511180e92e74a8866482d3a32bfb3f8e3fb78a17f

See more details on using hashes here.

File details

Details for the file lapa_database_structure-0.0.14-py3-none-any.whl.

File metadata

File hashes

Hashes for lapa_database_structure-0.0.14-py3-none-any.whl
Algorithm Hash digest
SHA256 954ca5aa6a873e28880c4e886c1d5f71f8aa3f47508e24634464257c16cffa32
MD5 44386a4cae31f744b51e0760fb8f9844
BLAKE2b-256 9d3e941baf3a89602ccf52e62c6b40567ce6dfea3e738ff3fe9bccd7c5e318f9

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page