我在Django项目中有两个模型。其中一个有一个指向另一个的foreignkey,并且在admin中显示为一个内联模型,这样我们就可以同时使用这两个模型。
class Model1(models.Model):
name = CharField(max_length=150)
class Model2(models.Model):
parent = ForeignKey(Model1, on_delete=CASCADE)
name = CharField(max_length=15)
我目前的目标是能够将Model1保存在admin中,并在保存任何数据之前检查所有关联的Model2示例,以确保它们的“name”字段不是某个值。这意味着,如果我更改了Model1的名称并创建了2个Model2示例,我将检查两个Model2示例的名称传入名称值,确保它被检出,如果两者都没有,则不保存任何内容,如果两者都被检出,则保存所有内容。
到目前为止,我还没有找到任何东西,可以让我在保存Model1之前看到传入的值。相反,我只能在保存每个传入的Model2之前检查它。
1条答案
按热度按时间lymnna711#
您应该能够通过使用Django pre_保存信号为Model1在保存任何数据之前检查所有关联的Model2示例来实现这一点。
例如,这应该起作用: