Атрибут date
Атрибут date принадлежит классу Message из модуля flask_mail.
Он хранит объект datetime, представляющий дату и время отправки письма.
Если атрибут не задан явно, Flask-Mail автоматически подставляет текущее время в момент отправки.
Атрибут можно как читать, так и присваивать ему новое значение.
Синтаксис
message.date
message.date = datetime_object
Пример
Давайте создадим письмо и посмотрим значение атрибута date по умолчанию:
from flask import Flask
from flask_mail import Mail, Message
app = Flask(__name__)
app.config['MAIL_SUPPRESS_SEND'] = True
mail = Mail(app)
with app.app_context():
msg = Message('Hello', sender='from@example.com', recipients=['to@example.com'])
res = msg.date
print(res)
Результат выполнения кода:
None
Как видим, по умолчанию атрибут равен None. Значение устанавливается автоматически только при отправке.
Пример
Давайте явно зададим дату письма с помощью объекта datetime:
from flask import Flask
from flask_mail import Mail, Message
from datetime import datetime
app = Flask(__name__)
app.config['MAIL_SUPPRESS_SEND'] = True
mail = Mail(app)
with app.app_context():
msg = Message('Hello', sender='from@example.com', recipients=['to@example.com'])
msg.date = datetime(2024, 1, 15, 10, 30, 0)
res = msg.date
print(res)
Результат выполнения кода:
2024-01-15 10:30:00
Пример
Давайте отправим письмо и проверим, что дата установилась автоматически:
from flask import Flask
from flask_mail import Mail, Message
app = Flask(__name__)
app.config['MAIL_SUPPRESS_SEND'] = True
mail = Mail(app)
with app.app_context():
msg = Message('Hello', sender='from@example.com', recipients=['to@example.com'])
mail.send(msg)
res = msg.date
print(res is not None)
Результат выполнения кода:
True
Смотрите также
-
класс
Message,
который представляет электронное письмо -
атрибут
subject,
который хранит тему письма -
атрибут
sender,
который хранит отправителя письма -
атрибут
recipients,
который хранит список получателей