Работал ли с сигналами в Django

Python Middle Аэрофлот
Работал ли с сигналами в Django
Ответы
Да, работал. Сигналы в Django позволяют выполнять определённые действия при возникновении событий в приложении (например, сохранение модели). Они реализуются через модуль `django.db.models.signals`. Основные сигналы: - `pre_save`, `post_save` — до/после сохранения модели. - `pre_delete`, `post_delete` — до/после удаления. - `m2m_changed` — при изменении ManyToMany-поля. Пример: ``` from django.db.models.signals import post_save from django.dispatch import receiver from .models import UserProfile @receiver(post_save, sender=User) def create_user_profile(sender, instance, created, **kwargs): if created: UserProfile.objects.create(user=instance) ``` Важно: - Сигналы могут усложнить отладку. - Лучше использовать явные вызовы методов, если логика тесно связана с бизнес-процессом. - Регистрировать сигналы нужно в `ready()` методе конфига приложения или в `apps.py`.