Как сделать некоторые фильтры обязательными в лакомстве? - PullRequest
9 голосов
/ 24 февраля 2012
class LinguistResource(ModelResource):

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

Возможно ли сделать "языковой" фильтр обязательным?

Моя цель - поднять ошибку, если в параметрах GET отсутствует ключ "language"

1 Ответ

13 голосов
/ 24 февраля 2012

Вы можете поймать это, переопределив 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)
...