Django model's save method not triggering signals as expected
I've tried everything I can think of but I'm stuck on something that should probably be simple. I'm working with Django 3.2 and trying to implement a custom save method on my model, but I'm finding that the associated signals aren't firing as I expected. I have a model called `Product` and I'm overriding the `save` method to perform some custom logic, but when I save an instance, the `post_save` signal doesn't seem to be triggered. Here's the relevant part of my model: ```python from django.db import models from django.db.models.signals import post_save from django.dispatch import receiver class Product(models.Model): name = models.CharField(max_length=100) price = models.DecimalField(max_digits=10, decimal_places=2) def save(self, *args, **kwargs): # Custom logic before saving self.price = round(self.price, 2) # Ensure price has 2 decimal places super().save(*args, **kwargs) # Call the original save method @receiver(post_save, sender=Product) def product_saved(sender, instance, created, **kwargs): print(f"Product saved: {instance.name}, created: {created}") ``` When I run the following code to create a new product: ```python product = Product(name='Test Product', price=19.99) product.save() ``` I don't see the expected print output from the `product_saved` function. I've double-checked that the signal receiver is properly connected and that the model is being saved, but it seems like the custom `save` method is preventing the signal from firing. I've also tried moving the signal definition to the same file as the model, but that didn't help. Is there something I'm missing here? Could it be related to how I override the `save` method, or is there some other configuration I need to check? Any advice would be greatly appreciated! What are your experiences with this?