同じマナーで使用されるいくつかのオブジェクトがあります。このオブジェクトは、このオブジェクトの事前定義された型に分類されます。各タイプには、このタイプのオブジェクトに属するプロパティがあります。モデルでこれを取得するに は、私は心の中でモデルのため、このテーブルを持っていた:Djangoデータベースモデル:オブジェクトのタイプに応じたフィールド
(/説明とタイプに属する事前に定義されたプロパティを持つオブジェクト- 一つのテーブルフィールドのヘルプテキストは、プロパティrequierd、フィールドの種類とその上にある)
- その 性質を持つテーブルとの関係(このリスト内の次の1)
- 一つのオブジェクトの一つのテーブルオブジェクトのプロパティと値を持つテーブル( 定義済みの小道具
これは機能しますが、一緒に作業するにはプログラミングが必要です。
この解決策の別の問題は、プロパティのフィールドタイプです。これは異なる場合があります。だから、私は1つのフィールドタイプ(charField)を使用してそれを解析しようとするか、または最もよく使われるフィールドタイプ(value_integer = models.IntegerField)を持つ異なる値フィールドを持つテーブルを作成します。この場合、プロパティごとに1つのフィールドを埋め込むだけでemtpyフィールドがたくさん得られます。実際に私は何らかの辞書を探しています...
これが正しい方法であるかどうかわかりません。
これは行いますが、fooまたはbarのいずれのものであれ、すべてのものをループする方法よりも独立していますか?あなたがBaseThingテーブルをquiryした場合、他の拡張されたものは得られませんよね? –
私はdjangoのドキュメントでそれを見つけました:https://docs.djangoproject.com/en/dev/topics/db/models/#multi-table-inheritance –
もちろん、BaseThingをクエリできます。 djangoがすでに提供しているものにもっと多くの機能を提供するすばらしいアプリがいくつかあります:https://github.com/carljm/django-model-utils https://github.com/bconstantin/django_polymorphic – jpic