2024-09-28 20:52:59 发布
网友
有关于如何在django中继承对象的链接或教程吗?假设我有一辆车作为父母,一辆车和一辆卡车作为孩子。你知道吗
如果可能的话,是在模特儿。派伊? 它是如何工作的?你知道吗
谢谢。。。你知道吗
与python继承完全相同
class Vehicle(Model): name = models.TextField() class Car(Vehicle): passengers = PositiveIntegerField() class Truck(Vehicle): tonnage = FloatField() >>> Car.objects.create(name='Beetle', passengers = 5) <Car: name="Beetle",passengers=5> >>> Truck.objects.create(name='Mack', tonnage=4.5) <Truck: name="Mack,tonnage=4.5> >>> Vehicle.objects.all() [<Vehicle: name="Beetle">,<Vehicle: name="Mack>] >>> v = Vehicle.objects.get(name='Beetle') >>> (bool(v.car), bool(v.truck)) (True, False) >>> v.car <Car: name="Beetle",passengers=5> >>> v.truck None
https://docs.djangoproject.com/en/dev/topics/db/models/#model-inheritance
因为Django使用Python,所以正常的Python继承是有效的。有关继承模型的更多信息,请参阅关于模型的Django文档,特别是关于Model inheritance的部分。你知道吗
值得注意的是,虽然Django支持两个继承方法,但没有一个方法的行为是多态的,也就是说,如果使用抽象基类,如果使用多表继承,就不能对车辆模型进行查询并获取汽车实例,不能使用基类模型实例中的子类的行为。你知道吗
有someapps和片段试图解决这个问题,但我发现它们的集成不是很友好。你知道吗
与python继承完全相同
https://docs.djangoproject.com/en/dev/topics/db/models/#model-inheritance
因为Django使用Python,所以正常的Python继承是有效的。有关继承模型的更多信息,请参阅关于模型的Django文档,特别是关于Model inheritance的部分。你知道吗
值得注意的是,虽然Django支持两个继承方法,但没有一个方法的行为是多态的,也就是说,如果使用抽象基类,如果使用多表继承,就不能对车辆模型进行查询并获取汽车实例,不能使用基类模型实例中的子类的行为。你知道吗
有someapps和片段试图解决这个问题,但我发现它们的集成不是很友好。你知道吗
相关问题 更多 >
编程相关推荐