[英]Django model + Unique column on two tables (inheritance)
如何根据子表和父表中的列创建约束(在数据库上以保持完整性)?
Model:
class DBMaster(models.Model):
col1 = models.CharField()
class DBOne(DBMaster):
col_own....
col1 - should be this same how in DBMaster
class Meta:
constraints = [
models.UniqueConstraint(fields=['col_own', 'col1'], name='CON_UNIQUE_1')
]
我们可以使用物化视图,但我们不会。 有什么建议吗?
我认为您应该在 model 中使用unique_together
并且您的基础 model 应该是抽象的
class BaseDBMaster(models.Model):
col1 = models.CharField()
class Meta:
abstract = True
class DBMaster(BaseDBMaster):
pass
class DBOne(BaseDBMaster):
col_own....
col1 - should be this same how in DBMaster
class Meta:
unique_together = ('col1', 'col_own')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.