16 lines
571 B
Python
16 lines
571 B
Python
from sqlmodel import SQLModel
|
|
|
|
from sqlmodel import SQLModel, Field
|
|
from typing import Optional
|
|
from datetime import datetime
|
|
|
|
class User(SQLModel, table=True):
|
|
id: Optional[int] = Field(default=None, primary_key=True)
|
|
gitea_id: int = Field(unique=True, index=True)
|
|
username: str = Field(index=True)
|
|
full_name: Optional[str] = None
|
|
email: Optional[str] = None
|
|
role: str = Field(default="student") # admin, professor, lead, member, student
|
|
is_active: bool = Field(default=True)
|
|
created_at: datetime = Field(default_factory=datetime.utcnow)
|