2

作为使用 Django 的初学者,我正在尝试添加一些模块来测试 Django,但是我遇到了关于 importError 的问题,我已经在谷歌上搜索了没有成功的解决方案。下面是我的情况

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

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

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

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

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

4

1 回答 1

1

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

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

将 id 放入设置文件中:

ANONYMOUS_USER_ID = <Your anonymous USER_ID>

编辑:

刚刚浏览了 django-guardian 应用程序的文档。它还指定了这一点:
http ://packages.python.org/django-guardian/configuration.html

于 2011-01-05T12:16:02.867 回答