我无法理解models.Model参数以及它在这里做了什么 . 我在工作中学习django,这是我的第一个软件项目 . 这是一块:
class DocumentRequest(models.Model):
#contact info fields
first_name = models.CharField(max_length=255)
last_name = models.CharField(max_length=255)
在整个代码的第一部分中,我们使用了Charfield,IntegerField,DateTimeField等 . 如果我是正确的,它似乎是模型文件的Model类允许使用这些东西 . 我不明白为什么你会使用models.Model作为参数,为什么不只是导入“Model”类并使用这些调用(models.CharField等)?
谢谢
1 回答
你在这里有
class inheritance
.有一个
Model
类存在于django.db.models
模块中 . 您实际上可以检查源代码here, currently starting at line 371 . 正如您向下滚动时所看到的,有很多方法 . 方法是在类中定义的函数 . 当你在声明另一个类时,它会继承那些在父类中定义的方法(以及其他优点) .你的
DocumentRequest
类将包含Model
类中定义的所有特定于新类的新东西 .class inheritance
的概念为我们省去了很多麻烦,绝对是理解面向对象编程的核心 .你可以这样做: