解决方法是创建一个可重用的Base Model类,然后继承它来创建其他model。示例代码如下:
from django.db import models
# 创建一个可重用的Base Model类
class BaseModel(models.Model):
created = models.DateTimeField(auto_now_add=True)
modified = models.DateTimeField(auto_now=True)
class Meta:
abstract = True
# 继承Base Model类来创建其他model
class Blog(BaseModel):
title = models.CharField(max_length=100)
content = models.TextField()
class Comment(BaseModel):
blog = models.ForeignKey(Blog, on_delete=models.CASCADE)
content = models.CharField(max_length=200)
在上面的示例中,BaseModel类包含了创建和修改日期的字段,这样每一个继承它的model就不需要自己定义这些字段了。这样做可以提高代码复用性和可维护性,减少出现错误的机会。
上一篇:避免在Django中查询相关表
下一篇:避免在Django中重复使用模型