2012-08-25 97 views
0

我有一个Django-tastypie资源,它代表一个横幅并且有一个叫做“展示”的字段,当网站上出现横幅时,这个字段就会增加。Tastypie过滤器按最小值

class BannerResource(ModelResource): 

    owner = fields.ForeignKey('advertisment.api.AdvertiserResource', 'owner', full=True) 
    class Meta: 
     queryset = Banner.objects.all() 
     resource_name = 'banner' 
     authorization = Authorization() 

我想获得具有最小印象的旗帜,官方文档中有没有像

filtering = {'impressions': ('min',)} 

我使用BackboneJS在前端,我可以得到所有的横幅与骨干收集和JavaScript的过滤,但我正在寻找一个更快的方式来做到这一点。 任何想法?

感谢

回答

0

如果您想与印象比你需要的东西X更大的号码检索横幅。对于一个你需要在你的资源定义可能的滤波操作,像这样(假设你的模型具有impressions场):

class BannerResource(ModelResource): 

    owner = fields.ForeignKey('advertisment.api.AdvertiserResource', 'owner', full=True) 

    class Meta: 
     queryset = Banner.objects.all() 
     resource_name = 'banner' 
     authorization = Authorization() 

     filtering = { 'impressions' : ALL } 

可用选项看看Tastypie's documentation on filtering

然后,如果你提出了以下要求:

GET http://<your_host>/v1/banners?impressions__gte=X 

你应该得到你所需要的。