From a9417058ee53105d7e3f14e445d2116744eaddf9 Mon Sep 17 00:00:00 2001 From: StNicolay Date: Sat, 10 Dec 2022 23:46:00 +0300 Subject: [PATCH] Updated tables, changed primary keys Removed id fields from tables Set user_id to be primary key of master_passwords Set user_id and name to be primary keys of accounts --- src/database/models.py | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/src/database/models.py b/src/database/models.py index 7a1d4cd..ad0e3ca 100644 --- a/src/database/models.py +++ b/src/database/models.py @@ -1,12 +1,11 @@ -from typing import Optional - import sqlmodel class MasterPass(sqlmodel.SQLModel, table=True): __tablename__ = "master_passwords" - id: Optional[int] = sqlmodel.Field(primary_key=True) - user_id: int = sqlmodel.Field(nullable=False, index=True, unique=True) + user_id: int = sqlmodel.Field( + sa_column=sqlmodel.Column(sqlmodel.INT(), primary_key=True) + ) salt: bytes = sqlmodel.Field( sa_column=sqlmodel.Column(sqlmodel.BINARY(64), nullable=False) ) @@ -17,10 +16,9 @@ class MasterPass(sqlmodel.SQLModel, table=True): class Account(sqlmodel.SQLModel, table=True): __tablename__ = "accounts" - __table_args__ = (sqlmodel.UniqueConstraint("user_id", "name"),) - id: Optional[int] = sqlmodel.Field(primary_key=True) - user_id: int = sqlmodel.Field(nullable=False, index=True) - name: str = sqlmodel.Field(nullable=False, index=True, max_length=255) + __table_args__ = (sqlmodel.PrimaryKeyConstraint("user_id", "name"),) + user_id: int = sqlmodel.Field() + name: str = sqlmodel.Field(max_length=255) salt: bytes = sqlmodel.Field( sa_column=sqlmodel.Column(sqlmodel.BINARY(64), nullable=False) )