1

Item と City という 2 つのエンティティがあります。アイテムが多くの都市を「持つ」ことができることを表すように、1 対多の関係のようにモデル化するにはどうすればよいですか? 私は ReferenceProperty でそれをやりたいのですが、それはリストになるようで、キーのリストのプロパティはありません。関係を表すためにどのようにモデル化すればよいか教えていただけますか?

新しいオブジェクトを作成するときに、コレクションである参照プロパティを使用して新しいオブジェクトを作成している場合、1 対多のようなものを作成できます。

class ItemLocation(db.Model):   
    reference = db.ReferenceProperty(Item,
            collection_name='matched_cities', verbose_name='Cities')

しかし、これはまさに私が望むものではありません。特定のアイテムについて都市を反復処理できる便利なモデリングが必要です。

{% for city in item.matched_cities %}

これをどのように行うべきか教えていただけますか?

ありがとうございました

4

1 に答える 1

3

キーのリストを絶対に持つことができます。これを Item モデルに追加します。

cities = db.ListProperty(db.Key)

次に、これらの都市をデータストアから取得できます

itemsCities = ItemLocation.get(item.cities)
于 2012-04-28T11:21:43.767 に答える