Джанго Джосер: Сброс адреса электронной почты - PullRequest
0 голосов
/ 05 октября 2019

Я использую имя пользователя для первичной идентификации. Тем не менее, пользователи также имеют адреса электронной почты. Я хотел бы знать, как настроить «сброс адреса электронной почты», чтобы пользователи могли изменять свои адреса электронной почты. Эта функциональность кажется мне очевидной, но я ничего не нашел - я что-то упустил или, возможно, мой подход неверен?

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

Любая помощь будет высоко оценена. Заранее спасибо.

1 Ответ

0 голосов
/ 30 октября 2019

Сначала я предлагаю вам посмотреть этот замечательный учебник по Djoser Ускоренный курс по аутентификации Django Rest Framework , затем вам нужно настроить свою электронную почту с помощью API gmail или API sendgrid. Вот пример кода, который вам нужно указать в настройках

Для Gmail

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_USE_TLS = True
EMAIL_USE_SSL = False
EMAIL_PORT = 587
EMAIL_HOST_USER = 'your email address@gmail.com'
EMAIL_HOST_PASSWORD = 'gmail API Key (password)'

скопировать шаблоны из REST-реализация системы аутентификации Django , затем в настройках добавить свойhtml как показано ниже

'PASSWORD_RESET_CONFIRM_URL': 'password_changed_confirmation/password/reset/confirm/{uid}/{token}',
    'USERNAME_RESET_CONFIRM_URL': 'username_changed_confirmation/username/reset/confirm/{uid}/{token}',
    'ACTIVATION_URL': 'activation/activate/{uid}/{token}',
    'SEND_ACTIVATION_EMAIL': True,
    'SERIALIZERS': {},

Надеюсь, это поможет

...