РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
663 of 818 menu

Метод send

Метод send применяется к экземпляру класса EmailMessage и отправляет электронное письмо с использованием настроенного почтового бекенда. Метод возвращает количество успешно доставленных сообщений (обычно 1 при успешной отправке). При отправке можно передать дополнительные параметры, такие как почтовое соединение или список получателей, которые переопределят установленные в объекте письма.

Синтаксис

EmailMessage.send(fail_silently=False, connection=None)

Параметры

Метод send принимает два необязательных параметра:

⁅b⁆fail_silently⁅/b⁆ - логический флаг, определяющий, будут ли подавляться исключения при отправке. По умолчанию равен False, то есть исключения будут выбрасываться.

⁅b⁆connection⁅/b⁆ - экземпляр почтового соединения, который будет использоваться для отправки. Если не указан, используется стандартное соединение по умолчанию.

Пример

Давайте создадим простое письмо и отправим его одному получателю:

from django.core.mail import EmailMessage email = EmailMessage( subject='Hello from Django', body='This is a test email sent from Django.', from_email='sender@example.com', to=['recipient@example.com'] ) res = email.send() print(res)

Результат выполнения кода:

"1"

Пример

Отправим письмо с подавлением исключений при возникновении ошибки:

from django.core.mail import EmailMessage email = EmailMessage( subject='Test with fail_silently', body='This email will not raise an exception on failure.', from_email='sender@example.com', to=['invalid-recipient@example.com'] ) res = email.send(fail_silently=True) print(res)

Результат выполнения кода:

"0"

Пример

Отправим письмо с использованием пользовательского почтового соединения:

from django.core.mail import EmailMessage, get_connection connection = get_connection( host='smtp.custom.com', port=587, username='user@custom.com', password='secure_password', use_tls=True ) email = EmailMessage( subject='Custom SMTP Test', body='This email uses a custom SMTP connection.', from_email='user@custom.com', to=['test@example.com'] ) res = email.send(connection=connection) print(res)

Результат выполнения кода:

"1"

Пример

Отправим письмо с несколькими получателями и вложениями:

from django.core.mail import EmailMessage email = EmailMessage( subject='Important Document', body='Please find attached the document.', from_email='sender@example.com', to=['recipient1@example.com', 'recipient2@example.com'], bcc=['bcc@example.com'] ) email.attach('document.pdf', b'PDF content here', 'application/pdf') email.attach_file('image.png') res = email.send() print(res)

Результат выполнения кода:

"1"

Смотрите также

  • функция send_mail,
    которая отправляет простое письмо без создания объекта класса
  • функция send_mass_mail,
    которая отправляет несколько писем за одно соединение
  • функция mail_admins,
    которая отправляет письмо администраторам сайта
  • функция mail_managers,
    которая отправляет письмо менеджерам сайта
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить