在Django中创建模型时,为什么类继承models.Model而不仅仅是Model?

时间:2012-11-08 04:43:01

标签: python

我无法理解django模型中的继承

如果我在django中创建模型:

from django.db import models
class Person(models.Model):
    name = models.CharField(max_length=200)

我不能只是写

class Person(Model):

因为我已经导入了模型而我正在尝试继承Model。模型是模型的子类吗?我也可以写下面的内容,因为我已经导入了模型。

    name = CharField(max_length=200)

1 个答案:

答案 0 :(得分:3)

这不是Django问题;这是一个Python问题。

如果您不熟悉Python的处理方式,请在使用Django之前先阅读它。

调查Python的模块并导入概念以了解这一点。一个好的开始是Modules document in the Python tutorial

关键是from django.db import models导入models模块,因此您在该范围内有一个名为models的变量,它是模型模块。

可能有类似from django.db.models import Model, CharField的内容,但对于Django模型,约定是导入models模块,而不是其组件。