Skip to content

Commit 0b50484

Browse files
committed
fix: disable create/edit/delete on admin by default
1 parent 9602c4a commit 0b50484

File tree

1 file changed

+19
-8
lines changed

1 file changed

+19
-8
lines changed

db/st_admin.py

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -35,14 +35,25 @@
3535
logger = logging.getLogger('uvicorn.error')
3636

3737

38-
class UserView(ModelView):
38+
class DefaultView(ModelView):
39+
def can_create(self, request: Request) -> bool:
40+
return False
41+
42+
def can_delete(self, request: Request) -> bool:
43+
return False
44+
45+
def can_edit(self, request: Request) -> bool:
46+
return False
47+
48+
49+
class UserView(DefaultView):
3950
fields = ["email", "email_verified", "username", "created_at", "id"]
4051

4152
async def repr(self, obj: Any, request: Request) -> str:
4253
return obj.email
4354

4455

45-
class PlatformView(ModelView):
56+
class PlatformView(DefaultView):
4657
fields = [
4758
EnumField(name="id", choices=[(e.value, e.value) for e in PlatformEnum]),
4859
HasOne("platform_role", identity="role"),
@@ -55,14 +66,14 @@ async def repr(self, obj: Any, request: Request) -> str:
5566
return obj.name
5667

5768

58-
class RoleView(ModelView):
69+
class RoleView(DefaultView):
5970
fields = ["id", "name", "description"]
6071

6172
async def repr(self, obj: Any, request: Request) -> str:
6273
return obj.name
6374

6475

65-
class PlatformMembershipView(ModelView):
76+
class PlatformMembershipView(DefaultView):
6677
fields = [
6778
HasOne("platform", identity="platform"),
6879
HasOne("user", identity="user"),
@@ -74,7 +85,7 @@ async def repr(self, obj: Any, request: Request) -> str:
7485
return f"{obj.platform.name}{obj.user.email}"
7586

7687

77-
class GroupView(ModelView):
88+
class GroupView(DefaultView):
7889
fields = [
7990
"group_id",
8091
"name",
@@ -110,7 +121,7 @@ async def repr(self, obj: Any, request: Request) -> str:
110121
return obj.name
111122

112123

113-
class GroupMembershipView(ModelView):
124+
class GroupMembershipView(DefaultView):
114125
fields = [
115126
HasOne("group", identity="group"),
116127
HasOne("user", identity="user"),
@@ -119,7 +130,7 @@ class GroupMembershipView(ModelView):
119130
]
120131

121132

122-
class PlatformMembershipHistoryView(ModelView):
133+
class PlatformMembershipHistoryView(DefaultView):
123134
fields = [
124135
"platform_id",
125136
HasOne("user", identity="user"),
@@ -130,7 +141,7 @@ class PlatformMembershipHistoryView(ModelView):
130141
]
131142

132143

133-
class GroupMembershipHistoryView(ModelView):
144+
class GroupMembershipHistoryView(DefaultView):
134145
fields = [
135146
"group_id",
136147
HasOne("user", identity="user"),

0 commit comments

Comments
 (0)