Я использую django-уведомления в моем проекте, и я хочу уведомлять конкретного пользователя всякий раз, когда модель создается с использованием сигнала, но post_save также работает, когда модель обновлено, как я могу это предотвратить, и только создайте метод post_save, когда создается модель.addHow, чтобы сделать django post_save сигналом запуска только во время создания
models.py
class Card(models.Model):
user = models.ForeignKey(User,on_delete=models.CASCADE)
title = models.CharField(max_length=100)
description = models.TextField(blank=True)
list = models.ForeignKey(List, related_name='cards')
story_points = models.IntegerField(null=True, blank=True)
business_value = models.IntegerField(null=True, blank=True)
def __str__(self):
return "Card: {}".format(self.title)
def my_handler(sender, instance, **kwargs):
if instance.pk is None:
notify.send(instance.user, recipient=User.objects.get(pk=1), target=instance, verb='created')
post_save.connect(my_handler, sender=Card)
Я попытался с помощью, если instance.pk его нет, но когда я добавляю это условие не работает вообще.
Редакция: Код проверка, если создан
def my_handler(sender, instance, created, **kwargs):
if created:
notify.send(instance.user, recipient=User.objects.get(pk=1), target=instance, verb='created')
Я попробовал уже, но он по-прежнему посылает при обновлении модели – HackAfro
Добавьте код, который делает это. – utkbansal
Я добавил код в вопрос. – HackAfro