class Project(models.Model):
name = models.CharField(max_length=100)
project_results_m2m = models.ManyToManyField(Project_Results,blank=True)
def delete_all(self):
pass ### TO BE ADDED FROM ANSWERS
@receiver(post_delete,sender=Project)
def delete_project_signal(sender,instance,created=False,**kwargs):
if created is False:
instance.delete_all()
p = Project.objects.get(id=1)
p.delete()
- Если значение выше
delete()
сработало на объекте проекта 1
, то сигнал выполнит функцию delete_all
.
Теперь я хотел бы удалить все объекты Project_Results
, связанные с project_results_m2m
для объекта проекта 1
.
Как мне этого добиться безопасным образом при удалении, с сигналами или без сигналов?