Django の social_auth の Facebook ユーザで admin に入る
Django の django-social-auth
のプラグインを使ってます。
こちらで Facebook で認証した後に生成されたユーザで Django の admin に入りたいと思ってます。
まず、models.py にこのユーザを作成し、
is_staff を無理やり True にしようと、以下のようにしました。
class CustomUser(User):
class Meta:
verbose_name = u'カスタムユーザ'
verbose_name_plural = verbose_name
def __init__(self, *args, **kwargs):
super(User, self).__init__(*args, **kwargs)
# self._meta.get_field('is_staff').default = True # 試したが出来ない
super(User, self)._meta.get_field('is_staff').default = True
# CustomUser._meta.get_field('is_staff').default = True
settings.py にて
SOCIAL_AUTH_USER_MODEL = 'my_app.CustomUser'
のように行いました。
コメントアウトしたものもいろいろ試しました。
しかし、Facebook ユーザでログインできませんでした。
次に、それらしき記事を見つけました。
https://djangosnippets.org/snippets/2856/
しかし、出来ませんでした。
settings.py の中では、
USE_SOCIAL_AUTH_AS_ADMIN_LOGIN
なのに、admin.pyで SOCIAL_AUTH_USE_AS_ADMIN_LOGIN
となってるものおかしいと思い同じ変数に変更しましたがそれでも出来ませんでした。
もし解決策がありましたら、ご教示いただきたいです。