【Django 018】Django2.2数据模型models的继承以及abstract的使用

python做为一门面向对象语音,其继承特性是做的非常好的。如果能在models定义中将一些通用字段放在父类中,子类直接继承,然后添加一些自己独有的字段,岂不是可以省很多创建模型的时间。这一篇我们就来看看这个问题。

我是T型人小付,一位坚持终身学习的互联网从业者。喜欢我的博客欢迎在csdn上关注我,如果有问题欢迎在底下的评论区交流,谢谢。

纯语法定义继承

models.py中创建如下People类做为一会要用的父类

class People(models.Model):
    p_name = models.CharField(max_length=16)
    p_sex = models.BooleanField(default=True)

然后创建两个子类AmericanChinese继承自People

class American(People):
    a_state = models.CharField(max_length=16)


class Chinese(People):
    c_province = models.CharField(max_length=16)

按照正常逻辑,我们只想要AmericanChinese这两张表,但是完成makemigrationsmigrate以后和我们设想的不一样,一共出现了三张表,也就是说People

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值