我需要在admin中编辑“添加对象”操作。它需要将用户重定向到自定义原因,添加对象所需的逻辑太复杂,无法在管理员中进行管理。那么,我该如何做到这一点呢?即:
图为django-suit管理员,但问题是一样的。如何将该按钮重定向到自定义网址?或者,我如何创建一个重定向到自定义URL的类似按钮(我可以禁用默认创建并只保留自定义按钮)。
答案 0 :(得分:1)
覆盖<div class="outer">
<div class="myFloat">Float 1</div>
<div class="myFloat">Float 2</div>
<div class="myFloat">Float 3</div>
</div>
html,阻止change_list_template
。它是添加按钮的地方。
object-tools-items
在class MyModelAdmin(admin.ModelAdmin):
change_list_template = 'change_list.html'
change_list.html
您需要在{% extends "admin/change_list.html" %}
{% load i18n admin_static admin_list %}
{% block object-tools-items %}
{% if has_add_permission %}
<li>
<a href="your/custom/url" class="addlink">
{% blocktrans with cl.opts.verbose_name as name %}Add {{ name }}{% endblocktrans %}
</a>
</li>
{% endif %}
{% endblock %}
选项中包含的任何目录中添加新的html。但是,你应该在你的模型的应用程序中做到这一点。
TEMPLATE_DIRS
在TEMPLATE DIRS路径中添加上面的dir。