无法在wagtail admin中访问用户页面

时间:2014-08-22 11:01:35

标签: python django wagtail

我的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+)/$']。我仍然不知道如何解决这个问题。

1 个答案:

答案 0 :(得分:0)

Django有一个AnonymousUser类看起来像一个模型对象但是没有存储在数据库中,我假设您没有使用这个。

您是否允许编辑此匿名用户?

如果是,您可以修改现有的urlpatterns,找到相应的RegexURLPattern对象,并将其替换为具有不同正则表达式的相同对象。

如果没有,您可以考虑限制有问题的视图接收的查询集并过滤您的匿名用户。