我需要获取继承了models.Model的每个类,以创建和更新字段。我可以通过向每个字段添加自定义保存方法来实现此目的,
def save(self, *args, **kwargs):
if not self.id:
self.created = timezone.now()
self.modified = timezone.now()
return super(`models.Model`, self).save(*args, **kwargs)
Run Code Online (Sandbox Code Playgroud)
但这违反了Don'tRepeatYourself规则。
我试图覆盖models.Model:
class LogModel(models.Model):
created = models.DateTimeField(editable=False)
updated = models.DateTimeField()
def save(self, *args, **kwargs):
if not self.id:
self.created = timezone.now()
self.updated = timezone.now()
return super(LogModel, self).save(*args, **kwargs)
Run Code Online (Sandbox Code Playgroud)
并使用LogModel而不是models.Model,但这失败,并显示错误E006(字段'x'与模型'y.logmodel'中的字段'x'冲突。
编辑
我的主要问题是如何向我的models.py中的所有模型添加自定义特定字段