3

私はGoogleAppEngineアプリケーションに取り組んでいますが、これは比較的新しいです。

私はすでにDjangoでアプリを作成し、ManyToManyのフィールドタイプを使用するモデルを持っています。

django-nonrelは多対多のフィールドタイプのDjangoをサポートしていないことを私は知っています。そのため、代わりにListFieldの使用を検討しています。

質問:
-ManyToManyの代わりにListFieldを使用することの意味は何ですか?
-これは、DjangoのJOINAPIを使用できないことを意味していることを認識しています。しかし、これは私のアプリにとって何を意味しますか?-多対多の分野で何かを検索する場合、問題が発生しますか?

これらが101の質問をプログラミングしている場合はお詫びします。私は開発に頭を悩ませようとしているデザイナーです。

ありがとう

4

1 に答える 1

1

ご存知かもしれませんが、関係をより手動でスパンすることになります。Djangoは、ManyToManyを使用する場合ほど役に立ちませんが、それほど大きな問題にはならないはずです。

関係の複雑さに応じて、この目的のためだけにモデルを構築することを検討することをお勧めします。

IMOは、オブジェクトに多くの関係がある場合(50を超えると思います)、または実行する予定のルックアップがこれから恩恵を受ける場合にのみ有効であるため、GAEでそのアプローチを使用したことはありません。おそらく、関係のいずれかの端から同じ頻度で開始するか、関係をループしてそれらまたはそれらの線に沿って何かを表示できると便利です。

前回GAEで何かを作成したときは、ListField(または当時知られているListProperty)を使用しました。これは、ほとんどのオブジェクトに関連するオブジェクトが約20個しかなく、ルックアップが逆になることはめったにないためです。

全体として、それは大したことではなく、私はそれを一緒に/周りで作業するためのどんな種類の苦痛としても覚えていません。

むしろ「IMO」でありながら、これがお役に立てば幸いです。

于 2010-10-06T23:34:57.810 に答える