отправить активировать-email с django-Регистрация
Мне интересно, есть ли способ отправить активированное письмо с именем пользователя, паролем с помощью django-регистрации. Сначала я думал об изменении регистрационной формы, но мне нужен пример.
4 ответов
django-Регистрация использует следующий код, внутренне, для обработки отправки электронной почты:
send_mail(subject, message, settings.DEFAULT_FROM_EMAIL, [self.user.email])
Если вы хотите работать, вам нужно будет указать значение DEFAULT_FROM_EMAIL в вашем settings.py.
также обратите внимание на следующее:
почта отправляется с помощью хоста SMTP и порт, указанный в EMAIL_HOST и Настройки EMAIL_PORT. Этот EMAIL_HOST_USER и Параметры EMAIL_HOST_PASSWORD, если задано, используются для аутентификация в SMTP сервер и параметр EMAIL_USE_TLS управляет ли безопасное соединение предназначенный.
Итак, чтобы привести пример, вот что я использовал в settings.py файл для использования учетной записи gmail:
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 465
EMAIL_USE_TLS = True
EMAIL_HOST_USER = 'my@gmail.com'
EMAIL_HOST_PASSWORD = 'my_emails_password'
django-Регистрация должен быть в состоянии отправлять электронные письма.
EMAIL_PORT = 465 работал несколько лет назад. Теперь вам нужно использовать порт 587 с Gmail. Причина: Django не поддерживает SMTP с SSL с самого начала. После настройки соединения с обычным текстом поддерживается только команда STARTTLS. Gmail, однако, больше не поддерживает эту опцию на порту 465.
надеюсь, что это поможет кому-то. После устранения неполадок в течение получаса я понял, что мне нужно явно заявить об этом, а также при использовании django-registration -
EMAIL_BACKEND = ' django.ядро.почта.внутренний.протокол SMTP.EmailBackend'
django-Регистрация-активировать реализована аналогичная функциональность как django-Регистрация. В основном он предоставляет код для регистрации пользователя, проверки и активации электронной почты, входа пользователя и выхода пользователя.
Если вам нужны примеры для реализации собственного кода, Вы можете проверить views.py и forms.py в register_activate чтобы получить некоторые подсказки.
надеюсь, что ответ поможет. Дайте мне знать, если у вас возникнут вопросы.