| 12345678910111213 | ==========================
How to enforce stock rules
==========================
You can enforce stock validation rules using signals.  You just need to register a listener to 
the ``BasketLine`` ``pre_save`` signal that checks the line is valid. For example::
    @receiver(pre_save, sender=Line)
    def handle_line_save(sender, **kwargs):
        if 'instance' in kwargs:
            quantity = int(kwargs['instance'].quantity)
            if quantity > 4:
                raise InvalidBasketLineError("You are only allowed to purchase a maximum of 4 of these")
 |