我有一些在多个模型中重复的列。有什么解决方案可以将它们放置在某个地方并使用任何模型吗?
您可以通过创建基类并在模型中继承它们来实现这一点。
Example:
class TimestampsModel(models.Model):
@classmethod
def get_fields(cls, fields: tuple):
return fields.__add__(('created_at', 'updated_at'))
created_at = models.DateTimeField(("created_at"), auto_now_add=True)
updated_at = models.DateTimeField(("updated_at"), auto_now=True)
您还可以将其抽象化,Django 不会为此创建迁移。
class Meta:
abstract = True
最后,一个模型是:
class Blog(baseModels.TimestampsModel):
class Meta:
db_table = "blog"
title = models.CharField(max_length=100)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)