diff --git a/examples/sqla/admin/main.py b/examples/sqla/admin/main.py index 64e02a5005..ee8beab510 100644 --- a/examples/sqla/admin/main.py +++ b/examples/sqla/admin/main.py @@ -225,6 +225,9 @@ class PostAdmin(ModelView): column_default_sort = ("date", True) create_modal = True edit_modal = True + can_view_details = True + details_modal = True + column_sortable_list = [ "id", "title", diff --git a/flask_admin/model/base.py b/flask_admin/model/base.py index e3ea7033d4..a03261522a 100644 --- a/flask_admin/model/base.py +++ b/flask_admin/model/base.py @@ -2446,8 +2446,19 @@ def edit_view(self) -> T_RESPONSE | str: else: template = self.edit_template + if self.can_delete: + delete_form = self.delete_form() + else: + delete_form = None + return self.render( - template, model=model, form=form, form_opts=form_opts, return_url=return_url + template, + model=model, + form=form, + form_opts=form_opts, + return_url=return_url, + delete_form=delete_form, + get_pk_value=self.get_pk_value, ) @expose("/details/") @@ -2475,12 +2486,19 @@ def details_view(self) -> T_RESPONSE | str: else: template = self.details_template + if self.can_delete: + delete_form = self.delete_form() + else: + delete_form = None + return self.render( template, model=model, details_columns=self._details_columns, get_value=self.get_detail_value, return_url=return_url, + delete_form=delete_form, + get_pk_value=self.get_pk_value, ) @expose("/delete/", methods=("POST",)) diff --git a/flask_admin/templates/bootstrap4/admin/lib.html b/flask_admin/templates/bootstrap4/admin/lib.html index a99a78ca7e..39bf6a829e 100644 --- a/flask_admin/templates/bootstrap4/admin/lib.html +++ b/flask_admin/templates/bootstrap4/admin/lib.html @@ -203,7 +203,8 @@