sts*_*ler 12 python django django-admin
我正在寻找向Django管理员更改页面添加自定义操作的方法.我不是在寻找可以添加到概述中下拉框中的操作.
我的Django应用程序中的一个模型包含有关文档的信息,这些文档在前端自动编译为PDF文件.我想让管理员直接从更改页面快速呈现PDF,以便快速检查结果.
我已经玩过覆盖change_form.html/submit_line.html,添加按钮绝对没问题.但我想知道如何以干净的方式扩展管理模块,以便它包含我的自定义操作.
由于自定义管理员视图基本上只是普通视图,因此没有太多专业.为了更清洁的集成,您应该考虑以下几点:
AdminSite.current_app参数RequestContext或Context在渲染模板时提供参数,该模板是admin模板的子类.编辑:
在这里找到了一个例子:http: //shrenikp.webs.com/apps/blog/show/5211522-add-custom-view-method-for-django-admin-model-
注意,该示例不使用current_app我提到的参数.我想您生成PDF的视图只返回一个HttpResponse具有适当内容类型而不是使用a呈现响应Context,因此不需要它.总而言之,current_app当您对自定义视图使用的管理模板进行子类化时,实际上可以使用current_app某个地方.
该示例将URL和视图封装在一个ModelAdmin.也可以通过AdminSite子类来做到这一点,但至少在你的用例中这可能是矫枉过正.
顺便说一句,覆盖change_form.html应用程序的模板以向标准更改视图添加按钮就可以了.在管理员中没有特殊的api(不幸的是).
| 归档时间: |
|
| 查看次数: |
7106 次 |
| 最近记录: |