Initial commit
This commit is contained in:
22
app/models.py
Normal file
22
app/models.py
Normal file
@ -0,0 +1,22 @@
|
||||
import uuid
|
||||
from datetime import datetime, UTC
|
||||
|
||||
from beanie import Document, Indexed
|
||||
from pydantic import Field
|
||||
|
||||
|
||||
class User(Document):
|
||||
id: uuid.UUID = Field(default_factory=uuid.uuid4)
|
||||
username: str = Indexed(unique=True)
|
||||
hashed_password: str
|
||||
created_at: datetime = Field(default_factory=lambda: datetime.now(UTC))
|
||||
updated_at: datetime = Field(default_factory=lambda: datetime.now(UTC))
|
||||
|
||||
class Settings:
|
||||
name = "users"
|
||||
|
||||
class Config:
|
||||
json_encoders = {
|
||||
datetime: lambda v: v.isoformat(),
|
||||
uuid.UUID: lambda v: str(v),
|
||||
}
|
||||
Reference in New Issue
Block a user