Django将硬编码的href链接添加到管理模型的表单视图页面

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django将硬编码的href链接添加到管理模型的表单视图页面相关的知识,希望对你有一定的参考价值。

在Django的管理面板中,如何将硬编码链接添加到Django模型的表单页面(/ add / page)。这些是永远不会改变的文档链接。我希望每次在表单上显示这些链接作为参考,以便用户确定要输入到字段中的值。

我需要:自定义字段吗?内置场已经?以某种方式修改管理模板?在某处添加辅助功能?

我不是指“更改列表”视图;当你去模型中添加或编辑一个对象时,我指的是/change//add/页面视图。

add links in Django admin model form

models.朋友

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.朋友

class DateRangeAdminForm(forms.ModelForm):
    class Meta:
        model = DateRange
        fields = '__all__'

admin.朋友

@admin.register(DateRange)
class DateRangeAdmin(admin.ModelAdmin):
    form = DateRangeAdminForm
    list_display = ['date_name', 'adwords_name', 'bingads_name']
答案

扩展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

https://docs.djangoproject.com/en/2.0/howto/overriding-templates/#overriding-from-an-app-s-template-directory

以上是关于Django将硬编码的href链接添加到管理模型的表单视图页面的主要内容,如果未能解决你的问题,请参考以下文章

如何将硬编码文本与标签中的绑定文本连接起来? [复制]

在 django admin 中链接到外键对象

在 Django 管理界面中链接以直接从数据库中下载模型字段

将硬浮动链接到 softfp 性能不佳

Django:从管理模型到文档的超链接

将模型范围的帮助文本添加到 django 模型的管理表单