【问题标题】:guardian:I have set "ANONYMOUS_USER_ID",but still get an ImproperlyConfigured error监护人:我设置了“ANONYMOUS_USER_ID”,但仍然出现配置不当的错误
【发布时间】:2012-05-03 18:36:42
【问题描述】:

我在“/projectname/projectname/settings.py”中设置了ANONYMOUS_USER_ID

ANONYMOUS_USER_ID=-1

但是当我使用 syncdb 时,它的 Guardian.conf.settings 会引发 ImproperlyConfigured。

raise ImproperlyConfigured("为了使用 django-guardian 的" django.core.exceptions.ImproperlyConfigured:为了使用 django-guardian 的 ObjectPermissionBackend 授权后端,您必须在设置模块中配置 ANONYMOUS_USER_ID

I also post this question on google group

【问题讨论】:

    标签: python django


    【解决方案1】:
    1. 重新加载服务器
    2. 检查ANONYMOUS_USER_ID 可能的拼写错误
    3. 确保设置文件被实际使用并且ANONYMOUS_USER_ID是内部./manage.py diffsettings的输出

    【讨论】:

    • 我想为“AUTH_PROFILE_MODULE”定义一个 UserProfile 类。所以我使用“from userena.models import UserenaBaseProfile”并定义一个子类:class UserProfile(UserenaBaseProfile): pass。但是“从 userena.models 导入 UserenaBaseProfile”会导致问题。我不知道为什么。
    • 当我导入 userena.models.UserenaBaseProfile 或其子类时,我得到了同样的错误。
    • 在 settings.py 中,我使用“import userena.models.UserenaBaseProfile”。然后当我使用“diffsettings”和“syncdb”时,我得到了 ImproperlyConfigured 错误。
    • 也许我应该问:如何设置“AUTH_PROFILE_MODULE”? AUTH_PROFILE_MODULE="somemodel" ?
    • @supei 类似于 AUTH_PROFILE_MODULE='userena.UserenaBaseProfile' 。您可以在您的应用程序的models.py 之一中自定义UserProfile,并将其设置在settings.py 中,如AUTH_PROFILE_MODULE='yourapp.UserProfile'。检查docs.djangoproject.com/en/1.4/topics/auth/#auth-profiles
    【解决方案2】:

    "/projectname/projectname/setting.py"

    使用 settings.py 而不是 setting.py

    【讨论】:

    • 立即更新。它是“/projectname/projectname/settings.py”。这是一个错字。
    猜你喜欢
    • 2017-12-20
    • 2021-02-05
    • 1970-01-01
    • 2012-03-12
    • 2020-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多