【问题标题】:Django- Reversing custom Admin URLsDjango-反转自定义管理 URL
【发布时间】:2017-11-01 19:34:18
【问题描述】:

我正在使用将一些管理 URL 配置为的应用程序:

#admin.py....
    def get_urls(self):
            urls = super(FormAdmin, self).get_urls()
            extra_urls = [
                url("^(?P<form_id>\d+)/entries/$",
                    self.admin_site.admin_view(self.entries_view),
                    name="form_entries"),
            #......
            ]
            return extra_urls + urls

我无法在我的一个模板中使用模板标签获取与该标签对应的 URL。我正在尝试类似的东西:

<a href="{% url 'admin:forms_form_entries' form_id=4 %}">4-Entries</a>

(forms 是应用程序的标签)。我一直遇到无反向匹配类型的错误:

NoReverseMatch at /polls/ Reverse for 'forms_form_entries' with 未找到参数“(4,)”和关键字参数“{}”。 0 个图案 试过:[]

我遗漏了什么使标签正常工作?

【问题讨论】:

    标签: python django django-templates django-views django-admin


    【解决方案1】:

    在 html 中试试这个

    <a href="{% url 'admin:form_entries' form_id=4 %}">4-Entries</a>
    

    【讨论】:

      【解决方案2】:

      您的网址格式名称 form_entries 与网址标签中的 forms_form_entries 不匹配。正如您所期望的那样,Django 不会自动为模式名称添加 &lt;app_name&gt;_ 前缀。

      更改其中一个以使其匹配。

      【讨论】:

        猜你喜欢
        • 2013-09-07
        • 2011-11-28
        • 2021-06-07
        • 2013-02-16
        • 1970-01-01
        • 2017-02-08
        • 2020-04-01
        • 1970-01-01
        • 2019-11-04
        相关资源
        最近更新 更多