отправить электронное письмо с django-регистрацией - PullRequest
8 голосов
/ 24 мая 2010

Мне интересно, есть ли способ отправить активированное письмо с именем пользователя и паролем с помощью django-registration Сначала я подумал об изменении формы регистрации, но мне нужен пример.

Ответы [ 4 ]

10 голосов
/ 25 мая 2010

django-registration использует для внутреннего использования следующий код:

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-registration затем сможет отправлять электронные письма.

3 голосов
/ 21 июня 2013

EMAIL_PORT = 465 работал несколько лет назад. Теперь вам нужно использовать порт 587 с Gmail. Причина: Django не поддерживает SMTP с SSL с самого начала. Поддерживается только команда STARTTLS ПОСЛЕ настройки открытого текста. Однако Gmail больше не поддерживает эту опцию для порта 465.

1 голос
/ 13 августа 2015

Надеюсь, это кому-нибудь поможет. После устранения неполадок в течение получаса я понял, что должен был явно указать это при использовании django-registration -

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'

0 голосов
/ 17 мая 2016

django-register-activ реализовал функциональность, аналогичную django-registration. В основном он предоставляет код для регистрации пользователя, проверки и активации электронной почты, входа пользователя и выхода из системы.

Если вам нужны примеры для реализации собственного кода, вы можете проверить views.py и forms.py в register_activate , чтобы получить некоторые подсказки.

Надеюсь, ответ поможет. Дайте мне знать, если у вас есть дополнительные вопросы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...