私はdjango 1.4で完全に機能していた以下のコードを持っていました.
以前、1.4 を使用していたときは、ユーザー プロファイルを使用してユーザー情報を維持していましたが、アップグレードすると、1 つのテーブルにすべての詳細が含まれるカスタム ユーザー モデルを使用しました。ソーシャル認証をテストするとすべて正常に機能するため、この部分を受け入れるため、関連性はないと思います。
def twitter_extra_values(sender, user, response, details, **kwargs):
"""
accounts - twitter_extra_values - signal
"""
try:
TwitterExtra.objects.get_or_create(
user = user,
screen_name = response.get('screen_name')
)
except IntegrityError:
TwitterExtra.objects.get(
user = user,
screen_name = response.get('screen_name')
).delete()
# recursively attempt to recreate the record
twitter_extra_values(sender, user, response, details, **kwargs)
return True
pre_update.connect(twitter_extra_values, sender=TwitterBackend, dispatch_uid="accounts.twitter_extra_values")