首页 文章

Django的 . 在为管理面板保存之前比较模型字段

提问于
浏览
0

我是Django的新手,我有一个问题(是的,是的,我一直在找,但没找到......) . 有两种型号:

class CounterDetail(models.Model):
counter = models.ForeignKey(Counter, on_delete=models.CASCADE)
date_placing = models.DateField(auto_now=False, auto_now_add=False, blank=False, null=False)
verifying_period_mounts = models.IntegerField(blank=False, null=False)

class Detail(models.Model):
counterdetail = models.ForeignKey(CounterDetail, on_delete=models.CASCADE)
date_last_verification = models.DateField(auto_now=False, auto_now_add=False, blank=False, null=False)
date_obxoda = models.DateField(auto_now=False, auto_now_add=False, blank=False, null=False)

如何通过管理面板向第二个模型添加条目时实施检查:字段 date_obxoda = models.DateField(auto_now=False, auto_now_add=False, blank=False, null=False) more more date_placing = models.DateField(auto_now = False,auto_now_add = False,blank = False,null = False)来自另一个模型 .

当我通过管理面板添加记录时,我正在寻找一种方法(最好是模型中重写的save()方法),以验证第二个模型(使用外键)的日期是否大于第一个 .

请举个例子,谢谢 .

1 回答

  • 0

    您可以覆盖详细模型保存方法

    def save(self, *args, **kwargs):
        super(Detail, self).save(*args, **kwargs)
        if self.date_obxoda > self.counterdetail.date_placing :
            #do_something
    

    如果有这个帮助,请告诉我

相关问题