私は python-social-auth を使用しており、Facebook アカウントでユーザーを正常に認証できますが、メールのみが保持されます。方法:
- 誕生日を守りますか?
- 彼のペットの名前など、FB から来ていない情報を追加して永続化しますか? (私が知る限り、パイプラインを使用する必要がありますが、方法はわかりません)
どんな助けでも大歓迎です。
前もって感謝します!
PS: 十分な評判を持っている人は、タグ「python-socialauth」を作成しますか?
私は python-social-auth を使用しており、Facebook アカウントでユーザーを正常に認証できますが、メールのみが保持されます。方法:
どんな助けでも大歓迎です。
前もって感謝します!
PS: 十分な評判を持っている人は、タグ「python-socialauth」を作成しますか?
生年月日の永続性は を定義するのと同じくらい簡単でSOCIAL_AUTH_FACEBOOK_EXTRA_DATA = [('birthdate', 'birthdate')]
、後で を実行することでアクセスできますuser.social_auth.get(provider='facebook').extra_data['birthdate']
。
他のデータはパイプラインで保存する必要がありますが、これはそれほど単純ではありませんが、難しくはありません。パイプラインは、認証プロセス中に呼び出される関数です (サインアップ、ログイン、または関連付けであっても、関数は必要に応じてそれを確認する必要があります)。関数は、 、 、 、 、 、 などの多くのパラメーターを取得strategy
しbackend
ますsocial
。user
必要response
なrequests
パラメーターdetails
を定義してから、 を使用**kwargs
して他のパラメーターを無視するのが最善です。
関数がコード化されたら、SOCIAL_AUTH_PIPELINE
設定に追加する必要があります (必ずデフォルトのエントリも追加してください。そうしないと、認証プロセスが機能しません。これらはhttp://psa.matiasaguirre.net/docs/pipeline. html#authentication-pipeline )。