0

次の状況をモデル化する必要がありますが、Google アプリ エンジンで「正しく」実行する方法について一貫した例を見つけることができないようです。

次のような単純な状況があるとします。

Company 1 -----> M Store

企業には 1 つから複数の店舗があります。各店舗には、住所行 1、都市、州、国、郵便番号などで構成される住所があります。

Ok。「監査」を作成する必要があるとしましょう。監査は企業向けであり、1 つから多くの凝視にまたがることができます。

次のようなものです:

Audit 1 ------> 1 Company
      1 ------> M Store

ここで、「監査人」を正しい場所に送るために、ストアの「アドレス」に基づいてすべての「監査」を照会する必要があります。

次のような記事がたくさんあるようです。

http://code.google.com/appengine/articles/modeling.html

「ContactCompany」モデル クラスの作成例を示します。ただし、この種の関係は、「本当に必要」でパフォーマンスを「気にする」場合にのみ使用する必要があるとも言われています。

また、可能な限り非正規化して、すべての「クエリ可能な」データを Audit クラスに移動する必要があることも頻繁に読みました。

では、これを解決する最善の方法として何を提案しますか?

Expando クラスがあることは確認しましたが、これが「最適な」オプションであるかどうかはわかりません。

これに関する助けや考えは大歓迎です。

前もってありがとう、マット

4

1 に答える 1

1
class Company(db.Model):
   name = db.StringProperty()

class address(db.Model):
   address = db.PostalAddressProperty()

class store(db.Model):
   company = db.ReferenceProperty(Company)
   address = db.ReferenceProperty(Address)

すべての会社の店舗を照会できるようになりました。

company_oject.address_set.all().filter().fetch()

数千のストアを持つ MNC でない限り、このクエリはほとんどの場合うまく機能するはずです。

http://code.google.com/appengine/docs/python/datastore/entitiesandmodels.html#References

さらに役立ちます。

于 2010-04-07T04:27:35.727 に答える