【发布时间】:2015-04-22 08:58:32
【问题描述】:
我正在使用 mongoengine (v0.9) 作为由 Python 3.4 运行的 Django (v1.8) 项目的映射器。
虽然我在 settings.py 文件中添加了以下代码,但当用户尝试使用 django 默认管理进程连接到管理员时,我仍然收到此错误)
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'mongoengine.django.mongo_auth',
'myapp',
)
AUTHENTICATION_BACKENDS = ('mongoengine.django.auth.MongoEngineBackend',)
SESSION_ENGINE = 'mongoengine.django.sessions'
connect('mymongodb')
/admin/login/ 处的 AttributeError
“MetaDict”对象没有属性“pk”
请求方法:POST
请求网址:http://myapp.dev:8000/admin/login/
Django 版本:1.8
异常类型:属性错误
异常值:“MetaDict”对象没有属性“pk”
异常位置:c:\Programs\Python34\lib\site-packages\django\contrib\auth__init__.py 登录,第 111 行
Python 可执行文件:c:\Programs\Python34\python.exe
Python 版本:3.4.2
P.S:我也尝试过通过编写 URL 模式、模板和视图来自定义登录过程,但在调用“login()”函数时会出现同样的错误。
【问题讨论】:
-
你有没有找到解决办法。我也有同样的错误
-
@himanshudua 不幸的是还没有。我现在写了一个临时的用户管理器类。一旦找到任何解决方案,我将更新我的代码和这个问题。
-
@himanshudua 找到解决方案了吗?
标签: python django python-3.x mongoengine