本文介绍了在将python-social-auth从0.1.17升级到0.2.4时,会话属性未在请求中提供给自定义管道方法?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的社交身份验证管道如下:
My social-auth pipeline is as follows:
SOCIAL_AUTH_PIPELINE = (
'social.pipeline.social_auth.social_details',
'social.pipeline.social_auth.social_uid',
'social.pipeline.social_auth.auth_allowed',
'social.pipeline.social_auth.social_user',
'social.pipeline.user.get_username',
'social.pipeline.social_auth.associate_by_email',
'social.pipeline.user.create_user',
'social.pipeline.social_auth.associate_user',
'social.pipeline.social_auth.load_extra_data',
'social.pipeline.user.user_details',
'useraccounts.models.create_user_profile'
)
当'useraccounts.models.create_user_profile'执行以下操作时:
When 'useraccounts.models.create_user_profile' does following:
request = kwargs.get('request')
do_something(session_key=request.session.session_key)
出现以下错误:
'QueryDict' object has no attribute 'session'
请求字典包含带有以下键的元素:状态,代码,提示符,session_state,身份验证用户
'Request' dictionary has elements with following keys: state, code, prompt, session_state, authuser
我正在使用Django 1.5.5版。问题来了,因为我已经将python-social-auth从v0.1.17升级到v0.2.4
I am using Django version 1.5.5. The problem is coming since I have upgraded python-social-auth from v0.1.17 to v0.2.4
推荐答案
尝试使用
strategy.request
访问Django请求。
to access django request.
这篇关于在将python-social-auth从0.1.17升级到0.2.4时,会话属性未在请求中提供给自定义管道方法?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!