Джанго: Как сохранить новый адрес электронной почты после отправки подтверждающего письма - PullRequest
0 голосов
/ 21 января 2019

Я создаю логику, новый адрес электронной почты проверяется с подтверждением электронной почты. Но я не понимаю, как сохранить новый адрес электронной почты после отправки подтверждающего сообщения. Мне нужно сохранить новый адрес электронной почты где-нибудь, чтобы я мог сохранить его, когда пользователь проверил подтверждающее письмо. Как обычно работает логика проверки?

Мой текущий код такой

views.py

def change_email(request):
    if request.method == 'POST':
        form = ChangeEmailForm(request.POST)

        if form.is_valid():
            # send the verification email here while creating a token
            ...
            to_email = form.cleaned_data.get('new_email')
            email = EmailMessage(subject, message, to=[to_email],)
            email.send()
            return HttpResponseRedirect...


def verify_email(request, uid64, token):
    # user verify the new email address when checking the verification email here but how I can save the new email address the user input

Как сохранить новый адрес электронной почты, введенный пользователем, или сохранить новое значение адреса электронной почты в форме, чтобы я мог сохранить его позже?

1 Ответ

0 голосов
/ 21 января 2019

Расширьте модель User, добавив дополнительное поле "new_email", а затем сохраните его перед отправкой электронного письма.

def change_email(request):
    if request.method == 'POST':
        form1 = ChangeEmailForm(request.POST)
        if form1.is_valid():
            request.user.new_email = form.cleaned_data['new_email']
            request.user.save()
            ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...