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.15

lapa and lapa_testing

  • authentication
    • rename user_session_hashed_refresh_token to user_session_refresh_token

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.15.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

File details

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

File metadata

File hashes

Hashes for lapa_database_structure-0.0.15.tar.gz
Algorithm Hash digest
SHA256 b97e34e75a76b3379aebbaa384bf0f522d5ca44366a9b0706b31bf396f254fea
MD5 dfbe64d96d320b37d686a7b18d7a8286
BLAKE2b-256 7c39c7dabcc6183667b9d12719fa55193f877d7860f7e8ff4681d0cba74b5147

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for lapa_database_structure-0.0.15-py3-none-any.whl
Algorithm Hash digest
SHA256 61c7f43b24d06757a5b189844fdc4c6fe9951f23f88789e378d9e2606d9b439e
MD5 bd58b1bbac83befff6426224c6912969
BLAKE2b-256 e46fe3f21808518bd7549f53634518ddacf65dc1e6df2dd855afb66c47875647

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