【问题标题】:Django: Getting a link to admin page in a templateDjango:在模板中获取到管理页面的链接
【发布时间】:2014-08-11 18:28:41
【问题描述】:

我正在尝试将我的 django 模板中的链接添加到由默认管理控制台处理的页面。设置如下,我不相信等式的 {% url %} 部分是正确的,我收到以下错误:

使用参数“()”和关键字反转“profile_ProfileModel” 未找到参数“{}”。

如何更正此问题并从模板链接到管理控制台。

模板.html

<a href="{% url 'admin:profiles_ProfileModel' %}">Profiles</a>

profiles.models.py

class Profile (models.Model)

profiles.admin.py

class ProfileAdmin (admin.ModelAdmin)
    admin.site.register (Profile, ProfileAdmin)

url.py

urlpatterns = patterns("", url(r"^admin/", include(admin.site.urls)),)

【问题讨论】:

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


    【解决方案1】:

    模型的变更列表 URL 的名称是 {{ app_label }}_{{ model_name }}_changelist。在您的情况下,如果 app_label 是 profiles 并且模型在 Profile 中,则视图名称将是 profiles_profile_changelist

    尝试以下方法:

    <a href="{% url 'admin:profiles_profile_changelist' %}">Profiles</a>
    

    有关更多信息,请参阅reversing admin urls 上的 Django 文档。

    【讨论】:

    • 你的应用叫什么名字?你用的是什么版本的 Django?
    • 确保更新代码后重启了服务器。除此之外,恐怕我没有任何其他建议。希望你能弄清楚。