python做为一门面向对象语音,其继承特性是做的非常好的。如果能在models定义中将一些通用字段放在父类中,子类直接继承,然后添加一些自己独有的字段,岂不是可以省很多创建模型的时间。这一篇我们就来看看这个问题。
我是T型人小付,一位坚持终身学习的互联网从业者。喜欢我的博客欢迎在csdn上关注我,如果有问题欢迎在底下的评论区交流,谢谢。
文章目录
纯语法定义继承
在models.py
中创建如下People
类做为一会要用的父类
class People(models.Model):
p_name = models.CharField(max_length=16)
p_sex = models.BooleanField(default=True)
然后创建两个子类American
和Chinese
继承自People
class American(People):
a_state = models.CharField(max_length=16)
class Chinese(People):
c_province = models.CharField(max_length=16)
按照正常逻辑,我们只想要American
和Chinese
这两张表,但是完成makemigrations
和migrate
以后和我们设想的不一样,一共出现了三张表,也就是说People
表