Я работаю на веб-сайте социальной сети и хочу внедрить Google Login. Однако при входе в систему будет создан пользовательский объект, в то время как мой веб-сайт хранит данные в объектах «Member», которые однозначно связаны с соответствующими объектами User.
Что я хочу сделать, это просто получить информацию о человеке из Google API, а затем использовать эту информацию для создания соответствующего объекта User и Member, а затем войти в систему как этот пользователь. Как я могу это сделать? Кроме того, есть ли лучший способ справиться с этим?
models.py
from django.db import models
from django.contrib.auth.models import User
from django.core import validators
from django.conf import settings
import re
class Member(models.Model):
username = models.CharField(max_length=40)
name = models.CharField(max_length=40)
user = models.OneToOneField(User, unique=True, on_delete=models.CASCADE)
number_of_followers = models.IntegerField(default=0)
bio = models.TextField(blank=True)
follows = models.ManyToManyField("self", related_name='followers', symmetrical=False, blank=True)
subscribed_to = models.ManyToManyField("self", related_name='subscriber', symmetrical=False, blank=True)
profile_picture = models.ImageField(upload_to='propic', blank=True)
email = models.EmailField(max_length=60, blank=True)
def __str__(self):
return self.username