0

contrib の django コメントを使用し、いくつかのコメントが関連付けられたオブジェクト (エントリ) を持っています。私のtastypieリソースには次のものがあります:

class CommentResource(ModelResource):
    user = fields.ForeignKey(UserResource, 'user')

class Meta:
    queryset = Comment.objects.all()
    resource_name = 'comments'
    allowed_methods = ['get']
    fields = ['comment', 'resource_uri', 'submit_date', 'user',]
    filtering = {
        'user': ALL_WITH_RELATIONS,
    }

すべてのコメントを取得したり、ユーザーごとにフィルター処理したりできます。正常に動作しています。ユーザーではなく特定のエントリ オブジェクトに基づいて、同じ種類のフィルタを実行するにはどうすればよいでしょうか。

ご協力いただきありがとうございます。

4

1 に答える 1

0

と の関係を知らずentrycomment具体的な答えを出すのは難しいですが、エントリとコメントが多対多の関係でリンクされていることを考えると、簡単に言えば次のようになります。

  • EntryResource を作成する
  • fields.ToManyFieldCommentResource の EntryResource に を追加します。
  • EntryResource の CommentResource に「fields.ToOneField」を追加します。
  • 'comments' : ALL_WITH_RELATIONSのフィルタリング dict に追加しますEntryResource

さらに、ネストされたリソースまたはカスタム URL をコメントに追加して、エントリに基づいてそれらをフィルタリングすることもできますが、それはすべて設計に依存します。

上記のほぼそのままの例は、Tastypie docs hereに記載されています。

于 2012-06-15T12:52:01.510 に答える