2010-01-21 18 views
7

Sto cercando di filtrare un oggetto in base al largo la sua prima lettera con:caso Ignorando con __startswith

topics = SpecialtyCategory.objects.filter(name__startswith=request.GET.get('filter')) 

Il problema è che il nome potrebbe essere "Esempio" o "esempio" e voglio ottenere tutti SpecialtyCategory indipendentemente dal caso.

Come posso fare?

risposta

18

Volete __istartswith:

topics = SpecialtyCategory.objects.filter(name__istartswith=request.GET.get('filter')) 

c'è un intero complemento di i versioni di filtri QuerySet, che sono tutte case insensitive: icontains, iexact, iregex, ecc