我正在使用django-guardian来处理对象权限。在我的settings.py中:
ANONYMOUS_USER_ID = -1但是,当我尝试运行服务器时,我得到一个配置不正确的错误:
django.core.exceptions.ImproperlyConfigured: In order to use django-guardian's ObjectPermissionBackend authorization backend you have to configure ANONYMOUS_USER_ID at your settings module我怀疑这可能是因为我在settings.py的顶部执行from guardian.shortcuts import assign,但我不确定。注释掉导入会导致服务器成功启动,但尝试访问任何页面时都会出现AttributeError: 'Settings' object has no attribute 'ROOT_URLCONF',这表明设置完全有问题(可能没有正确找到它们?)。
发布于 2012-11-08 06:01:23
我只是确保在遵循http://packages.python.org/django-guardian/configuration.html的配置说明后,项目可以顺利地使用guardian (使用Django1.4)运行。
..。回答你的问题:
ROOT_URLCONF属性)肯定应该被设置(如果你使用assign的内置命令(即django-admin.py startproject myproject)生成项目的话)。如果它丢失了,那么是的,你的配置被破坏了。尝试使用类似于'myproject.urls' (或您的主urls所在的任何位置)的设置,并检查这是否解决了问题。发布于 2013-12-04 02:50:15
需要说明的是,我在上一个官方版本中遇到了同样的问题(安装时使用了一个简单的pip install django-guardian)
从lukaszb's git repository安装版本时不会出现这种情况,我仔细检查了源代码
https://stackoverflow.com/questions/11888551
复制相似问题