0

我使用来自 contrib 的 django 评论,并且我有一个对象(条目),其中包含一些与之相关的评论。在我的美味派资源中,我有:

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

在不知道 和 之间的关系是什么的情况下,entry很难comment给出具体的答案,但简而言之,因为条目和评论是通过多对多关系链接的:

  • 创建一个入口资源
  • 将 CommentResource添加fields.ToManyField到 EntryResource
  • 将“fields.ToOneField”添加到 EntryResource 的 CommentResource
  • 添加'comments' : ALL_WITH_RELATIONS到过滤字典中EntryResource

此外,您可以将嵌套资源或自定义 URL 添加到 Comment 以根据条目过滤它们,但这完全取决于您的设计。

Tastypie docs here中给出了上述几乎逐字记录的示例。

于 2012-06-15T12:52:01.510 回答