来自第二个AdminSite实例的Django Multiple AdminSite NoReverseMatch

时间:2013-07-17 17:38:35

标签: django

我遇到了多个管理员的奇怪问题。

我有2个管理站点。一个,unicorn_admin.site,默认django.contrib.admin.site

尝试使用管理员反向网址时,某些应用会向我显示NoReverseMatch错误。请考虑以下事项:

这两个管理站点实例使用相同的模板。代码是100%相同。

{% url 'admin:packingslips_packingslipformat_changelist' %}
{# NoReverseMatch from /unicorn/ but okay from /b/ #}

我的印象是,admin命名空间可能会自动设置为当前活动的管理员,所以即使我已经命名了我的第二个管理员unicorn_admin,同时呈现{{1} } view,命名空间unicorn_admin设置为admin实例?

任何想法都赞赏。

unicorn_admin.py

unicorn_admin

Root URLConf

site = AdminSite(name='unicorn_admin')

1 个答案:

答案 0 :(得分:1)

使用namespaces添加相同urlconf的几个副本(在您的情况下 - 2个管理站点)。在评论中,我们找到了两种为不同管理站点执行不同命名空间的方法。