如何在美味派中强制使用一些过滤器?

Posted

技术标签:

【中文标题】如何在美味派中强制使用一些过滤器?【英文标题】:How to make some filters mandatory in tastypie? 【发布时间】:2012-03-14 19:08:34 【问题描述】:
class LinguistResource(ModelResource):

    class Meta:
        model = Linguist
        queryset = Linguist.objects.all()
        resource_name = 'linguists_by_language'
        filtering = 
            "language": ('exact', ),
        

是否可以强制“语言”过滤器?

如果在 GET 参数中缺少键“语言”,我的目标是引发错误

【问题讨论】:

【参考方案1】:

您可以通过覆盖build_filters 来捕获它:

from tastypie.exceptions import BadRequest

def build_filters(self, filters=None):
    if 'language' not in filters:
         raise BadRequest("missing language param") # or maybe create your own exception
    return super(LinguistResource, self).build_filters(filters)

【讨论】:

以上是关于如何在美味派中强制使用一些过滤器?的主要内容,如果未能解决你的问题,请参考以下文章

Makefile入门: 用最美味的例子

Tastypie 的距离空间查询

Vue.js - 强制过滤器应用程序

如何在下面的元素被动画化时强制 IE 继续对覆盖应用不透明度?

如何在 android EditText 中强制使用英文键盘

如何强制关注第一个无效输入?