Начиная с Django 6.0 (релиз запланирован на конец 2025 года), в ядро фреймворка добавлена поддержка фоновых задач через django.tasks. Это одна из самых крупных и важных обновлений Django после внедрения ASGI в 3.0.
Теперь больше не нужно использовать специфичные для бэкенда API или переписывать задачи при масштабировании. Пример использования:
from django.core.mail import send_mail
from django.tasks import task
@task(priority=2, queue_name="emails", enqueue_on_commit=True)
def email_users(emails, subject, message):
return send_mail(
subject=subject, message=message, from_email=None, recipient_list=emails
)
result = email_users.enqueue(
emails=["user@example.com"],
subject="You have a message",
message="Hello there!",
)
Особенности релиза:
— Основные интерфейсы и бэкенды «Immediate» и «Dummy» уже включены.
— Сложные бэкенды (например, база данных или RQ) будут добавлены позже.
— django.tasks совместим с django-tasks, который пока остаётся отдельным пакетом для пользователей старых версий и тестирования новых функций.
📎 Подробнее: https://clc.to/v57CXQ
🐸 Библиотека питониста
#буст