django的admin怎么写自己要的模板文件
时间: 2024-05-03 20:20:06 浏览: 139
django admin 自定义替换change页面模板的方法
可以通过以下步骤在 Django 的 admin 中自定义模板文件:
1. 在您的应用程序中创建 templates/admin 文件夹(如果不存在)。
2. 在 templates/admin 文件夹中创建您自己的模板文件夹,例如 myadmin。
3. 在 myadmin 文件夹中创建您自己的模板文件(例如 base_site.html),该文件将扩展 Django 的 admin/base_site.html 模板文件。
4. 在您的应用程序中的 admin.py 文件中导入 TemplateView 和 TemplateResponseMixin。
5. 创建你自己的视图并继承 TemplateView 和 TemplateResponseMixin。
6. 在视图中设置 template_name 属性为您自己的模板文件(例如 myadmin/base_site.html)。
以下示例代码演示了如何编写自己的 Django admin 模板文件:
```python
# admin.py
from django.contrib.admin.views import TemplateView
from django.contrib.admin.views.decorators import staff_member_required
from django.utils.decorators import method_decorator
@method_decorator(staff_member_required, name='dispatch')
class MyAdminView(TemplateView):
template_name = 'admin/myadmin/base_site.html'
```
在该示例中,我们创建了一个名为 MyAdminView 的视图,并将 template_name 属性设置为我们自己的模板文件。我们还使用 method_decorator 装饰器将 staff_member_required 应用于视图,以确保只有管理员可以访问该视图。
请记住,模板必须扩展 admin/base_site.html 模板文件,并且必须包含名为 content 的块标签,以便 admin 应用程序可以将其自己的内容注入该位置。在您自己的模板中,您可以添加自己的 CSS、JavaScript 和 HTML,以自定义 Django 的 admin 界面。
阅读全文