Создание уведомления для всех менеджеров проекта при появлении новых данных в инвентаризации?
Мне нужно автоматически отправлять уведомление для каждого менеджера проекта после вставки новых данных в инвентарь, чтобы уведомить его о том, что на складе появился новый товар. Я новичок в программировании на django и не знаком с использованием сигналов.
Models.py
class Item(models.Model):
ItemName = models.CharField(max_length=255, blank=True, null=True)
Quantity = models.IntegerField(null=True, default=1,
validators=[
MaxValueValidator(100),
MinValueValidator(0)
])
ModelNum = models.CharField(max_length=255, blank=True, null=True)
Category = models.ForeignKey(Category,on_delete=models.CASCADE, null=True)
date_created = models.DateTimeField(auto_now_add=True)
last_modified = models.DateTimeField(auto_now=True)
is_draft = models.BooleanField(default=True)
reorder_level = models.IntegerField(blank=True, default=10,
validators=[
MaxValueValidator(100),
MinValueValidator(1)
])
class Meta:
verbose_name_plural = 'Item'
def __str__(self):
return f'{self.ItemName}'
class Notifications(models.Model):
id=models.AutoField(primary_key=True)
sent_to = models.ManyToManyField(CustomUser)
message = models.TextField(null=True)
message_reply = models.TextField(null=True)
created_at=models.DateTimeField(auto_now_add=True)
updated_at=models.DateTimeField(auto_now=True)
Views.py
def inventory(request):
items = Item.objects.all()
if request.method == 'POST':
form = ItemForm(request.POST)
if form.is_valid():
form.save()
ItemName = form.cleaned_data.get('ItemName')
messages.success(request, f'{ItemName} has been successfully added.')
return redirect('inventory')
else:
form = ItemForm()
context = {
'items' : items,
'form' : form,
}
template_name ='inventory-admin/inventory.html'
return render(request, template_name, context)