Skip to content

Commit 91f1a91

Browse files
[sqladmin-912] - Add perform context functions to the Modelview class.
1 parent abdaa04 commit 91f1a91

2 files changed

Lines changed: 18 additions & 0 deletions

File tree

sqladmin/application.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -452,6 +452,8 @@ async def list(self, request: Request) -> Response:
452452
)
453453

454454
context = {"model_view": model_view, "pagination": pagination}
455+
context = await model_view.perform_list_context(context)
456+
455457
return await self.templates.TemplateResponse(
456458
request, model_view.list_template, context
457459
)
@@ -473,6 +475,7 @@ async def details(self, request: Request) -> Response:
473475
"model": model,
474476
"title": model_view.name,
475477
}
478+
context = await model_view.perform_details_context(context)
476479

477480
return await self.templates.TemplateResponse(
478481
request, model_view.details_template, context
@@ -519,6 +522,7 @@ async def create(self, request: Request) -> Response:
519522
"model_view": model_view,
520523
"form": form,
521524
}
525+
context = await model_view.perform_create_context(context)
522526

523527
if request.method == "GET":
524528
return await self.templates.TemplateResponse(
@@ -568,6 +572,8 @@ async def edit(self, request: Request) -> Response:
568572
"form": Form(obj=model, data=self._normalize_wtform_data(model)),
569573
}
570574

575+
context = await model_view.perform_edit_context(context)
576+
571577
if request.method == "GET":
572578
return await self.templates.TemplateResponse(
573579
request, model_view.edit_template, context

sqladmin/models.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1239,3 +1239,15 @@ def _validate_form_class(self, ruleset: List[Any], form_class: Type[Form]) -> No
12391239

12401240
for field_name in missing_fields:
12411241
delattr(form_class, field_name)
1242+
1243+
async def perform_list_context(self, context: dict | None = None) -> dict:
1244+
pass
1245+
1246+
async def perform_details_context(self, context: dict | None = None) -> dict:
1247+
pass
1248+
1249+
async def perform_create_context(self, context: dict | None = None) -> dict:
1250+
pass
1251+
1252+
async def perform_edit_context(self, context: dict | None = None) -> dict:
1253+
pass

0 commit comments

Comments
 (0)