我的wagtail管理界面有问题。在我的urls.py中,我这样说:
url(r'^cms-admin/', include(wagtailadmin_urls)),
url(r'^cms-search/', include(wagtailsearch_frontend_urls)),
url(r'^cms-documents/', include(wagtaildocs_urls)),
url(r'', include(wagtail_urls)),
除用户之外的所有链接(/ cms-admin / users /)都可以正常工作。当我去/ cms-admin / users /时出现以下错误:
NoReverseMatch at /cms-admin/users/
Reverse for 'wagtailusers_edit' with arguments '(-1L,)' and keyword arguments '{}' not found. 1 pattern(s) tried: ['cms-admin/users/(\\d+)/$']
再往下看,我发现Django尝试渲染模板并且遇到问题:
<a href="{% url 'wagtailusers_edit' user.id %}">{{ user.get_full_name|default:user.username }}</a>
有没有人知道我做错了什么?
由于 玛格达
修改
好的,我发现自己 - 问题是我有一个ID为-1的匿名用户,wagtail使用该模式:['cms-admin/users/(\\d+)/$']
。我仍然不知道如何解决这个问题。
答案 0 :(得分:0)
Django有一个AnonymousUser
类看起来像一个模型对象但是没有存储在数据库中,我假设您没有使用这个。
您是否允许编辑此匿名用户?
如果是,您可以修改现有的urlpatterns
,找到相应的RegexURLPattern
对象,并将其替换为具有不同正则表达式的相同对象。
如果没有,您可以考虑限制有问题的视图接收的查询集并过滤您的匿名用户。