添加监护模块时出现Django ImportError

时间:2011-01-05 12:08:31

标签: django configuration django-models import django-settings

作为使用Django的初学者,我试图添加一些模块用于测试Django,但我有一个关于importError的问题,我已经搜索了解决方案但没有成功。以下是我的情况

该项目是在我的PC J:\上创建的,而python包安装在C:上。根据监护人的安装指南,必须在django的后端添加以下代码:

AUTHENTICATION_BACKENDS = (
'django.contrib.auth.backends.ModelBackend', # default
'guardian.backends.ObjectPermissionBackend',)

问题来了,当我把监护人的应用程序放在mysite目录下时,用'guardian'配置install_apps设置并启动syncdb,错误声明如下,我认为这是因为django的filw不明白是什么是“guradian”真的是

  

文件“J:\ mysite \ guardian \ conf \ settings.py”,第6行,中       提出不正确的配置(“为了使用django-guardian”   django.core.exceptions.ImproperlyConfigured:为了使用django-guardian的O   bjectPermissionBackend授权后端你必须配置ANONYMOUS_USE   设置模块中的R_ID

因此,我将'guardian'文件夹移到Django的contrib文件夹下,添加sys路径并使用'django.contrib.guardian'配置install_app设置。但是,我最终得到了importerror。

1 个答案:

答案 0 :(得分:1)

从错误消息中可以看出,您需要为您的站点添加匿名用户的用户ID。

创建一个用户(可能是匿名的)并将用户的id放在settings.py文件中 使用shell从数据库中获取用户标识。

将ID放在设置文件中:

ANONYMOUS_USER_ID = <Your anonymous USER_ID>

编辑:

只需查看django-guardian应用程序的文档。它还指明了这一点:
http://packages.python.org/django-guardian/configuration.html