@receiver(post_save, sender=StockRecord)
def update_stock_alerts(sender, instance, created, **kwargs):
 if (created or kwargs.get('raw', False)):
  return
 stockrecord = instance
 try:
  alert = StockAlert.objects.get(stockrecord=stockrecord, status=StockAlert.OPEN)
 except StockAlert.DoesNotExist:
  alert = None
 if (stockrecord.is_below_threshold and (not alert)):
  StockAlert.objects.create(stockrecord=stockrecord, threshold=stockrecord.low_stock_threshold)
 elif ((not stockrecord.is_below_threshold) and alert):
  alert.close()

@ receiver ( post_save , sender = StockRecord ) def update_stock_alerts ( sender , instance , created , ** kwargs ) : if ( created or kwargs . get ( 'raw' , False ) ) : return stockrecord = instance try : alert = StockAlert . objects . get ( stockrecord = stockrecord , status = StockAlert . OPEN ) except StockAlert . DoesNotExist : alert = None if ( stockrecord . is_below_threshold and ( not alert ) ) : StockAlert . objects . create ( stockrecord = stockrecord , threshold = stockrecord . low_stock_threshold ) elif ( ( not stockrecord . is_below_threshold ) and alert ) : alert . close ( )
update low-stock alerts .