djangoでオブジェクトを継承する方法は?

djangoのオブジェクトを継承する方法に関するリンクやチュートリアルはありますか?私はそれが子供のための親と車とトラックとしての車を持っていると言いましょう。

それが可能なら、それはmodels.pyで行われますか? それはどのように機能していますか?

ありがとう...

0

3 答え

Pythonの継承とまったく同じ

class Vehicle(Model):
    name = models.TextField()

class Car(Vehicle):
    passengers = PositiveIntegerField()

class Truck(Vehicle):
    tonnage = FloatField()

>>> Car.objects.create(name='Beetle', passengers = 5)

>>> Truck.objects.create(name='Mack', tonnage=4.5)
<truck: name="Mack,tonnage=4.5>
>>> Vehicle.objects.all()
[,
>>> v.truck
None

https://docs.djangoproject.com/ja topics/db/models /#モデル継承

4
追加された
ハイ・トーマスすべての車両を選択する方法と、車両を持っているときに、それが車(またはトラック、オートバイなど)であるかどうかを知る方法を説明できますか?ありがとう。
追加された 著者 dani herrera,
nice、thanksありがとう+1
追加された 著者 dani herrera,
いくつかの追加情報を追加しました。これは物事をクリアすることを望む。
追加された 著者 Thomas,

Djangoはいくつかの継承メソッドをサポートしていますが、抽象基本クラスを使用する場合、Vehicleモデルでクエリを作成してCarインスタンスを取得することはできません。 Multi table継承を使用する場合、基本クラスモデルインスタンスのサブクラスの動作を使用することはできません。

いくつかの apps とこれに対処しようとしているスニペットを示していますが、

1
追加された

DjangoはPythonを使用しているので、通常のPython継承が機能します。継承するモデルの詳細については、モデルに関するDjangoのドキュメント、特にモデルの継承

0
追加された