2017-01-08 10 views
1

ユーザーがリンク/ログイン/スチームにクリックしました。その後、すべては、django.contrib.authユーザーインスタンスとsocial_authユーザーインスタンスは、罰金作成(propetly働くカスタムパイプラインで動作します。しかし、私は蒸気でログインした後、私の見解でからrequest.userを使用しようとするとした後、私はエラーユーザdjango-social-authを認証していませんか?

を持っています'AnonymousUser' オブジェクトは、反復可能ではありません

私のsettings.pyファイル

SOCIAL_AUTH_PIPELINE = (
'social.pipeline.social_auth.social_details', 
'social.pipeline.social_auth.social_uid', 
'social.pipeline.social_auth.social_user', 
# custom pipeline 
'markers.pipeline.add_steam_data_marker', 
# 
'social.pipeline.user.get_username', 
'social.pipeline.user.create_user', 
'social.pipeline.social_auth.auth_allowed', 
'social.pipeline.social_auth.associate_user', 
'social.pipeline.social_auth.load_extra_data', 
'social.pipeline.user.user_details',) 

アプリでマイカスタムpipeline.py

def add_steam_data_marker(strategy, details, backend, uid, *args, **kwargs): 

if backend.name == 'steam': 
    try: 
     Model.objects.get(steam_user_id=uid) 
     return redirect('/home/') 
    except ObjectDoesNotExist: 
     Model.objects.create(
      ........, 
     ) 

     return redirect('/model/add/') 

答えて

2

すべての問題はAUTHENTICATION_BACKENDSにありませんでした。 ..... social_core - > 'social_core.backends.steam.SteamOpenId'、

+0

ありがとうございます!わたしも。 – user963936

関連する問題