更新时间:2023-09-24 20:42:34
Exactly the same as python inheritence
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