Атрибут body
Атрибут body класса EmailMessage определяет
текстовое содержимое письма. Этот атрибут может содержать
как обычный текст, так и HTML-разметку, в зависимости от
установленного типа содержимого. Атрибут задается при
создании объекта и может быть изменен после инициализации.
Синтаксис
from django.core.mail import EmailMessage
email = EmailMessage(subject, body, from_email, to)
Пример
Давайте создадим письмо с простым текстовым содержимым:
from django.core.mail import EmailMessage
# Создание письма с текстовым содержимым
email = EmailMessage(
subject="Hello from Django",
body="This is a test email sent from Django application.",
from_email="sender@example.com",
to=["recipient@example.com"]
)
# Отправка письма
email.send()
Результат выполнения кода:
"Email sent successfully"
Пример
Давайте изменим содержимое письма после его создания:
from django.core.mail import EmailMessage
# Создание письма
email = EmailMessage(
subject="Important Update",
body="Initial message content.",
from_email="admin@example.com",
to=["user@example.com"]
)
# Изменение содержимого
email.body = "Updated message content with new information."
email.send()
Результат выполнения кода:
"Email sent with updated content"
Пример
Давайте создадим письмо с HTML-содержимым:
from django.core.mail import EmailMessage
# Создание письма с HTML содержимым
html_body = """
<h1>Welcome!</h1>
<p>Thank you for registering on our website.</p>
<p>Please click the link below to verify your email:</p>
<a href="https://example.com/verify/">Verify Email</a>
"""
email = EmailMessage(
subject="Welcome to Our Site",
body=html_body,
from_email="noreply@example.com",
to=["newuser@example.com"]
)
# Установка типа содержимого как HTML
email.content_subtype = "html"
email.send()
Результат выполнения кода:
"HTML email sent successfully"