summaryrefslogtreecommitdiffstats
path: root/db/models.py
diff options
context:
space:
mode:
Diffstat (limited to 'db/models.py')
-rw-r--r--db/models.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/db/models.py b/db/models.py
new file mode 100644
index 0000000..b66f5bc
--- /dev/null
+++ b/db/models.py
@@ -0,0 +1,13 @@
1from uuid import uuid4, UUID
2
3from sqlmodel import SQLModel, Field
4
5
6class BaseModel(SQLModel):
7 id: int | None = Field(primary_key=True, default=None)
8
9class ExternalModelMixin:
10 external_id: UUID = Field(index=True, unique=True, default_factory=uuid4)
11
12class User(BaseModel, ExternalModelMixin, table=True):
13 username: str = Field(unique=True, index=True)