2012-02-24 9 views
9
class LinguistResource(ModelResource): 

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

E 'possibile fare "linguaggio" filtro obbligatorio?Come fare alcuni filtri obbligatoria in tastypie?

Il mio obiettivo è aumentare errore se nei parametri GET chiave assente "linguaggio"

risposta

13

si può prendere questo sovrascrivendo 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)