1

我对多个管理站点有一个奇怪的问题。

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

NoReverseMatch尝试管理员反向 url 时,某些应用程序给我一个错误。考虑以下:

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

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

我的印象是admin命名空间可能会自动设置为当前活动的管理员,所以即使我已经命名了我的第二个管理员unicorn_admin,在渲染unicorn_admin视图时,命名空间admin是否设置为unicorn_admin实例?

任何想法表示赞赏。

unicorn_admin.py

site = AdminSite(name='unicorn_admin')

根 URLConf

(r'^unicorn/', include(unicorn_admin.site.urls)),
(r'^b/', include(admin.site.urls)),  # direct link to default admin panel
4

1 回答 1

1

使用命名空间添加相同 urlconf 的几个副本(在您的情况下 - 2 个管理站点)。在评论中,我们发现了 2 种方法来为不同的管理站点创建不同的命名空间。

于 2013-07-17T18:08:27.220 回答