管理面板中的业务逻辑
business logic in admin panel
I'm new with python and I create two models (Shoes and Order)
I can add record by admin panel but I want each time that I add order record it's check weather the shoes are available or not! where should I put logic?
型号:
有几个选项可以做到这一点:
A) 在 pre_save
信号上。如果您想在将对象存储到数据库之前进行检查:
@receiver(pre_save, sender=OrderRecord)
def handler_order_check(sender, instance, **kwargs):
...
B) 在 post_save
信号或 Molde.save
方法中,将在创建对象后进行检查:
@receiver(post_save, sender=OrderRecord)
def handler_order_check(sender, instance, **kwargs):
...
C) 在管理表单上。如果您只想在管理端保留检查,当从 f/e & shell 创建的对象将没有这样的检查时,related docs.
我建议使用 A,因为它会在您每次创建(或更新,取决于实现)时进行检查 OrderRecord
。
I'm new with python and I create two models (Shoes and Order) I can add record by admin panel but I want each time that I add order record it's check weather the shoes are available or not! where should I put logic?
型号:
有几个选项可以做到这一点:
A) 在 pre_save
信号上。如果您想在将对象存储到数据库之前进行检查:
@receiver(pre_save, sender=OrderRecord)
def handler_order_check(sender, instance, **kwargs):
...
B) 在 post_save
信号或 Molde.save
方法中,将在创建对象后进行检查:
@receiver(post_save, sender=OrderRecord)
def handler_order_check(sender, instance, **kwargs):
...
C) 在管理表单上。如果您只想在管理端保留检查,当从 f/e & shell 创建的对象将没有这样的检查时,related docs.
我建议使用 A,因为它会在您每次创建(或更新,取决于实现)时进行检查 OrderRecord
。