add __filter_restricted__ to User table

This commit is contained in:
Michael Genson
2026-05-14 18:53:58 +00:00
parent 7eb8836c14
commit 85695c2529
2 changed files with 6 additions and 1 deletions

View File

@@ -1,6 +1,6 @@
import string
from datetime import datetime
from typing import Annotated
from typing import Annotated, ClassVar
from sqlalchemy import Integer
from sqlalchemy.orm import DeclarativeBase, Mapped, declared_attr, mapped_column, synonym
@@ -22,6 +22,9 @@ Signals to the query filter API not to allow using this field in query operation
class SqlAlchemyBase(DeclarativeBase):
__filter_restricted__: ClassVar[bool] = False
"""When True, the query filter API will block traversal into this model unless explicitly allowed."""
id: Mapped[int] = mapped_column(Integer, primary_key=True)
created_at: Mapped[datetime | None] = mapped_column(NaiveDateTime, default=get_utc_now, index=True)
update_at: Mapped[datetime | None] = mapped_column(NaiveDateTime, default=get_utc_now, onupdate=get_utc_now)

View File

@@ -50,6 +50,8 @@ class AuthMethod(enum.Enum):
class User(SqlAlchemyBase, BaseMixins):
__tablename__ = "users"
__filter_restricted__ = True
id: Mapped[GUID] = mapped_column(GUID, primary_key=True, default=GUID.generate)
full_name: Mapped[str | None] = mapped_column(String, index=True)
username: Mapped[str | None] = mapped_column(String, index=True, unique=True)