Как добавить электронную почту для входа в систему через Google oauth Django
Я создаю проект Django и у меня есть 3 приложения.
- Студенты входят в систему для выполнения заданий.
- Преподаватели входят в систему, чтобы управлять списком действий студентов.
- Администраторы управляют разрешениями и входами. Администраторы будут добавлять адреса электронной почты учеников и учителей. чтобы проверить, что только добавленный email сможет войти в систему, а мой проект использует только google oauth login, может ли кто-нибудь подсказать мне, что мне нужно сделать? Если вы хотите, чтобы администратор добавил адрес электронной почты, и только добавленный email сможет войти в систему. .
что я пробовал
views.py
def admin_user_setting(req):
if req.method == "POST":
email_user = req.POST.get('email_user')
obj = Add_User_Email_User(email_user=email_user)
obj.save()
return redirect('/admin_user_setting')
else:
obj = Add_User_Email_User()
obj = Add_User_Email_User.objects.all()
AllUser = Add_User_Email_User.objects.all()
page_num = req.GET.get('page', 1)
p = Paginator(AllUser, 10)
try:
page = p.page(page_num)
except:
page = p.page(1)
context = {
"AllUser": Add_User_Email_User.objects.all(),
"page" : page,
}
return render(req, 'pages/admin_user_setting.html', context)
urls.py
urlpatterns = [
path('admin_user_setting',views.admin_user_setting, name="admin_user_setting"),
]
forms.py
class UserForm(ModelForm):
class Meta:
model = Add_User_Email_User
fields = ['email_user']
admin.py
admin.site.register(Add_User_Email_User)
models.py
class Add_User_Email_User(models.Model):
email_user = models.CharField(max_length=500, null=True)
def __str__(self):
return self.email_user