在Django的管理面板中,如何将硬编码链接添加到Django模型的表单页面(/ add / page)。这些是永远不会改变的文档链接。我希望每次在表单上显示这些链接作为参考,以便用户确定要输入到字段中的值。
我需要:自定义字段吗?内置场已经?以某种方式修改管理模板?在某处添加帮助函数?
我不是指“更改列表”视图;当您在模型中添加或编辑对象时,我指的是/change/
或/add/
页面视图。
models.py
class DateRange(models.Model):
date_name = models.CharField(max_length=100)
adwords_name = models.CharField(max_length=100)
bingads_name = models.CharField(max_length=100)
def __str__(self):
return self.date_name
forms.py
class DateRangeAdminForm(forms.ModelForm):
class Meta:
model = DateRange
fields = '__all__'
admin.py
@admin.register(DateRange)
class DateRangeAdmin(admin.ModelAdmin):
form = DateRangeAdminForm
list_display = ['date_name', 'adwords_name', 'bingads_name']
答案 0 :(得分:1)
扩展change_form.html
可行 - 它会在顶部添加链接。
在命名空间模板目录中创建此文件,此处称为“templates-dir”
templates-dir/admin/myapp/daterange/change_form.html
:
{% extends "admin/change_form.html" %}
{% block object-tools %}
{{ block.super }}
<ul>
<li>
<a href="https://link1.com">Adwords documentation</a>
</li>
<li>
<a href="https://link2.com">Bing ads documentation</a>
</li>
</ul>
{% endblock object-tools %}
相关文档:
https://docs.djangoproject.com/en/2.0/ref/contrib/admin/#overriding-admin-templates