複数の管理サイトで奇妙な問題が発生しています。
2 つの管理サイトがあります。1 つ、unicorn_admin.site
、およびデフォルトのdjango.contrib.admin.site
.
管理者の逆引き URL を試行すると、一部のアプリでNoReverseMatch
エラーが発生します。次の点を考慮してください。
この同じテンプレートが両方の管理サイト インスタンスに使用されます。コードは100%同じです。
{% url 'admin:packingslips_packingslipformat_changelist' %}
{# NoReverseMatch from /unicorn/ but okay from /b/ #}
おそらくadmin
名前空間が現在アクティブな管理者に自動的に設定されているという印象を受けているので、2 番目の adminunicorn_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