fastadmin 0.1.16__tar.gz → 0.1.17__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {fastadmin-0.1.16 → fastadmin-0.1.17}/PKG-INFO +7 -1
- {fastadmin-0.1.16 → fastadmin-0.1.17}/README.md +6 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/api/api.py +1 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/models/base.py +13 -10
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/models/orm/tortoise.py +1 -1
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/schemas/configuration.py +1 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/static/js/main.min.js +3 -3
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/static/js/main.min.js.map +1 -1
- {fastadmin-0.1.16 → fastadmin-0.1.17}/pyproject.toml +1 -1
- {fastadmin-0.1.16 → fastadmin-0.1.17}/LICENSE +0 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/__init__.py +0 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/api/__init__.py +0 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/api/depends.py +0 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/api/helpers.py +0 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/app.py +0 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/models/__init__.py +0 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/models/decorators.py +0 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/models/helpers.py +0 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/models/orm/__init__.py +0 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/schemas/__init__.py +0 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/schemas/api.py +0 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/settings.py +0 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/static/css/main.min.css +0 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/static/css/main.min.css.map +0 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/static/images/favicon.png +0 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/static/images/header-logo.svg +0 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/static/images/sign-in-logo.svg +0 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/static/js/787.cda612ba.chunk.js +0 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/static/js/787.cda612ba.chunk.js.map +0 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/templates/index.html +0 -0
- {fastadmin-0.1.16 → fastadmin-0.1.17}/fastadmin/views.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: fastadmin
|
3
|
-
Version: 0.1.
|
3
|
+
Version: 0.1.17
|
4
4
|
Summary:
|
5
5
|
Home-page: https://github.com/vsdudakov/fastadmin
|
6
6
|
License: MIT
|
@@ -39,6 +39,12 @@ Description-Content-Type: text/markdown
|
|
39
39
|

|
40
40
|

|
41
41
|
|
42
|
+
<p align="center">
|
43
|
+
<a href="https://twitter.com/intent/tweet?text=Admin%20Dashboard%20For%20FastAPI&url=https://github.com/vsdudakov/fastadmin&hashtags=FastAPI,AdminDashboard">
|
44
|
+
<img alt="tweet" src="https://img.shields.io/twitter/url/https/twitter?label=Share%20on%20twitter&style=social" target="_blank" />
|
45
|
+
</a>
|
46
|
+
</p>
|
47
|
+
|
42
48
|
## Introduction
|
43
49
|
|
44
50
|
FastAdmin is an easy-to-use Admin App for FastAPI inspired by Django Admin.
|
@@ -12,6 +12,12 @@
|
|
12
12
|

|
13
13
|

|
14
14
|
|
15
|
+
<p align="center">
|
16
|
+
<a href="https://twitter.com/intent/tweet?text=Admin%20Dashboard%20For%20FastAPI&url=https://github.com/vsdudakov/fastadmin&hashtags=FastAPI,AdminDashboard">
|
17
|
+
<img alt="tweet" src="https://img.shields.io/twitter/url/https/twitter?label=Share%20on%20twitter&style=social" target="_blank" />
|
18
|
+
</a>
|
19
|
+
</p>
|
20
|
+
|
15
21
|
## Introduction
|
16
22
|
|
17
23
|
FastAdmin is an easy-to-use Admin App for FastAPI inspired by Django Admin.
|
@@ -430,6 +430,7 @@ async def configuration(
|
|
430
430
|
actions_on_bottom=admin_obj.actions_on_bottom,
|
431
431
|
actions_selection_counter=admin_obj.actions_selection_counter,
|
432
432
|
fields=fields_schema,
|
433
|
+
fieldsets=admin_obj.fieldsets,
|
433
434
|
list_per_page=admin_obj.list_per_page,
|
434
435
|
save_on_top=admin_obj.save_on_top,
|
435
436
|
save_as=admin_obj.save_as,
|
@@ -420,18 +420,21 @@ class BaseModelAdmin:
|
|
420
420
|
|
421
421
|
:return: A list of model field names.
|
422
422
|
"""
|
423
|
-
fields = self.fields
|
424
423
|
model_fields = self.get_model_fields()
|
425
|
-
if not fields:
|
426
|
-
return [f for f in model_fields if not self.exclude or f not in self.exclude]
|
427
|
-
return [f for f in fields if f in model_fields]
|
428
424
|
|
429
|
-
|
430
|
-
|
431
|
-
|
432
|
-
|
433
|
-
|
434
|
-
|
425
|
+
fields = [f for f in model_fields if model_fields[f].get("is_pk")]
|
426
|
+
if not self.fields:
|
427
|
+
if self.fieldsets:
|
428
|
+
for item in self.fieldsets:
|
429
|
+
for field in item[1].get("fields") or []:
|
430
|
+
if field not in fields and field not in self.exclude:
|
431
|
+
fields.append(field)
|
432
|
+
else:
|
433
|
+
for field in model_fields:
|
434
|
+
if field not in fields and field not in self.exclude:
|
435
|
+
fields.append(field)
|
436
|
+
|
437
|
+
return fields
|
435
438
|
|
436
439
|
def has_add_permission(self) -> bool:
|
437
440
|
"""This method is used to check if user has permission to add new model instance.
|
@@ -247,7 +247,7 @@ class TortoiseModelAdmin(BaseModelAdmin):
|
|
247
247
|
widget_props = {
|
248
248
|
"required": field.get("required") or False,
|
249
249
|
"disabled": field_name in self.readonly_fields,
|
250
|
-
"
|
250
|
+
"readOnly": field_name in self.readonly_fields,
|
251
251
|
}
|
252
252
|
match field.get("orm_class_name"):
|
253
253
|
case "CharField":
|
@@ -92,6 +92,7 @@ class ModelSchema(BaseModel):
|
|
92
92
|
actions_on_bottom: bool | None
|
93
93
|
actions_selection_counter: bool | None
|
94
94
|
fields: Sequence[ModelFieldSchema]
|
95
|
+
fieldsets: Sequence[tuple[str | None, dict[str, Sequence[str]]]] | None
|
95
96
|
list_per_page: int | None
|
96
97
|
save_on_top: bool | None
|
97
98
|
save_as: bool | None
|