2016-08-22 25 views
1

私は新着ユーザーにメールを強制的に送信したいので、私はTwitterをメインサイン/ログインに使用しており、ソーシャルサインアップ後に「アカウント/メール」リンクにリダイレクトしたいと思います。私は@AnzelDjango allauthソーシャルサインアップ後のメール確認へのリダイレクト

from allauth.socialaccount.adapter import DefaultSocialAccountAdapter 

class SocialAccountAdapter(DefaultSocialAccountAdapter): 
     def save_user(self, request, sociallogin, form=None): 
      super(DefaultSocialAccountAdapter, self).save_user(request, sociallogin, form=form) 
      return redirect('/accounts/email/') 

から同じquestionと答えを見つけたが、答えは私のために働くと私はこれらの2行を追加setting.pyでこの

AttributeError at /accounts/twitter/login/callback/ 

'super' object has no attribute 'save_user' 

Request Method:  GET 
Request URL: http://localhost:8000/accounts/twitter/login/callback/?oauth_token=HSowSgAAAAAAuTblAAABVrLCOpE&oauth_verifier=cVrwyB2Vfk2Lgsrwg5fqE0wyzrfnwJ3H 
Django Version:  1.9.2 
Exception Type:  AttributeError 
Exception Value:  

'super' object has no attribute 'save_user' 
+0

'super(DefaultSocialAccountAdapter、self).save_user(request、sociallogin、form = form)'の代わりに 'super(SocialAccountAdapter、self).save_user(request、sociallogin、form = form)'を試してください。つまり、DefaultSocialAccountAdapter'の代わりに 'SocialAccountAdapter'の' super'を呼び出します。 – elethan

+0

私はそれを行いましたが、エラーは解消されました。問題は、既存のユーザであっても確認メールのURLにリダイレクトされることです。 –

答えて

2

を持っていなかったと忘れてしまいましたアダプタ:

SOCIALACCOUNT_AUTO_SIGNUP = True 
SOCIALACCOUNT_EMAIL_REQUIRED = True 

、今サインアップ後、またはそれだけで/アカウント/社会的/サインアップに新しいユーザーをredircts /と、このビューは、実際に彼のeamilのANを提出するようにユーザーを強制ログインdプロセスを検証する。

関連する問題