【发布时间】:2015-04-26 18:52:26
【问题描述】:
我有一组模型,关于餐馆和经营它们的厨师*:
class Chef(models.Model):
name = models.TextField()
class Restaurant(models.Model):
name = models.TextField()
chef = models.ForeignKey(Chef)
class FrenchChef(Chef):
angryness = models.PositiveIntegerField()
class FrenchRestaurant(Restaurant):
region = models.TextField()
不幸的是,当前的模型意味着非FrenchChef 可以运行FrenchRestaurant。
我是否可以将子类模型的 ForeignKey 的查询集限制为父类上可用查询集的子集?
* 我的模特实际上不是厨师和餐馆,但这更容易解释。这可能看起来并不明显,但Chefs 和FrenchChefs 确实需要进行不同的建模。
【问题讨论】:
-
这不是关于如何组织模型的问题,不是特别是在 django 中,而是在任何数据库中。或者您是在询问如何验证数据.. 您是否查看过 save() 函数或清理数据或 django 验证方法??
标签: python django django-models