在my设置.py文件如MongoEngine和Social Auth文档中所述,我最后添加了以下代码:
AUTH_USER_MODEL = 'mongo_auth.MongoUser'
SOCIAL_AUTH_MODELS = 'social_auth.db.mongoengine_models'
尝试运行服务器后出现此错误:
^{pr2}$如果删除SOCIAL_AUTH_模型,服务器会运行,但是如果MongoEngine出现故障,那么SOCIAL AUTH将无法工作,因为它没有任何引擎。在
MongoEngine版本:0.8.3
我找不到解决办法。我怎么解决这个问题?在
解决方案:
如果您查看social_auth.db.mongoengine_models.py
,您将看到{mongo_auth.MongoUser
。因为ReferenceField需要一个文档,而不是一个模型(MongoUser),所以我不得不忽略if
语句,并将USER_MODEL
设置为User
文档(mongo.django.auth.User),因为它已经写入else
语句中。我删除了替换if和else语句,只删除了这两行:
USER_MODEL_MODULE, USER_MODEL_NAME = 'mongoengine.django.auth.User'.rsplit('.', 1)
USER_MODEL = getattr(import_module(USER_MODEL_MODULE), USER_MODEL_NAME)
另一种方法是从设置中删除SOCIAL_AUTH_USER_MODEL
和{AUTH_USER_MODEL
设置。我没试过。在
目前没有回答
相关问题 更多 >
编程相关推荐