|
4 | 4 | from fastapi_amis_admin.crud.parser import LabelField
|
5 | 5 | from fastapi_amis_admin.models import Field
|
6 | 6 | from fastapi_amis_admin.utils.translation import i18n as _
|
7 |
| -from sqlalchemy import ForeignKey, func, select |
| 7 | +from sqlalchemy import func, select |
8 | 8 |
|
9 | 9 | from fastapi_user_auth.mixins.models import ( # noqa F401
|
10 | 10 | CreateTimeMixin,
|
@@ -49,16 +49,20 @@ class User(BaseUser, table=True):
|
49 | 49 | pass
|
50 | 50 |
|
51 | 51 |
|
52 |
| -class Role(PkMixin, CUDTimeMixin, table=True): |
53 |
| - """角色""" |
54 |
| - |
| 52 | +class BaseRole(PkMixin, CUDTimeMixin): |
55 | 53 | __tablename__ = "auth_role"
|
56 | 54 |
|
57 | 55 | key: str = Field(title="角色标识", max_length=40, unique=True, index=True, nullable=False)
|
58 | 56 | name: str = Field(default="", title="角色名称", max_length=40)
|
59 | 57 | desc: str = Field(default="", title="角色描述", max_length=400, amis_form_item="textarea")
|
60 | 58 |
|
61 | 59 |
|
| 60 | +class Role(BaseRole, table=True): |
| 61 | + """角色""" |
| 62 | + |
| 63 | + pass |
| 64 | + |
| 65 | + |
62 | 66 | class CasbinRule(PkMixin, table=True):
|
63 | 67 | __tablename__ = "auth_casbin_rule"
|
64 | 68 |
|
@@ -115,7 +119,7 @@ class LoginHistory(PkMixin, CreateTimeMixin, table=True):
|
115 | 119 |
|
116 | 120 | __tablename__ = "auth_login_history"
|
117 | 121 |
|
118 |
| - user_id: int = Field(None, title="用户ID", sa_column_args=(ForeignKey("auth_user.id", ondelete="CASCADE"),)) |
| 122 | + user_id: Optional[int] = Field(None, title="用户ID") |
119 | 123 | login_name: str = Field("", title="登录名", max_length=20)
|
120 | 124 | ip: str = Field("", title="登录IP", max_length=20)
|
121 | 125 | ip_info: str = Field("", title="IP信息", max_length=255)
|
|
0 commit comments