1

django-social-auth を使用して、ユーザーが Facebook を使用して Web サイトにログインできるようにしようとしています。ユーザーの姓名、メールアドレスを保存したい。ただし、ドキュメントのセットアップを使用すると、ユーザー名、電子メール、および認証トークンが保存されますが、何らかの理由で姓と名が保存されません。コードを見ると、FacebookBackend クラスは関数 get_user_details を提供していますが、どのように使用できるかわかりません。この情報を取得する簡単な方法があるはずです。そうでない場合は、追加のパイプラインを追加するオプションが常にあります。

4

1 に答える 1

1

名と姓は、デフォルトのパイプラインによってすでに取得されています。Facebookのバックエンドは、名前と名前を設定するget_user_details(47行目)を呼び出します。

デフォルトのパイプラインは、ログインが成功するたびにメソッドを再度呼び出すことで、これらの詳細を更新します。この動作は、以下を除いて独自のパイプラインを作成することでオフにできます。

'social_auth.backends.pipeline.user.update_user_details'

つまり、Facebookユーザーに名前と名前が設定されていないか、設定が間違っている可能性があります。どのバージョンを実行していますか?

于 2012-10-17T08:40:23.337 に答える