Django : How to filter in form -
i have model
class demande_expertise(models.model): user = models.foreignkey(user) material = models.charfield(_('material'), max_length=30) categorie = models.foreignkey("category") class category(models.model): name = models.charfield(_('name'), max_length=50) i have class category records : alloys, ceramic, composite, cu_based, metals, pure_metals, ni_based
form
class demande_expertiseform(forms.modelform): class meta: model = demande_expertise exclude = ('etat',) def __init__(self, *args, **kwargs): super(demande_expertiseform, self).__init__(*args, **kwargs) template
<td>{{ form.categorie}}</td> how form if want have template : ceramic, cu_based, ni_based ?
if write in demande_expertiseform
self.fields['categorie'].queryset = category.objects.filter(name__icontains="cu_based") i filter cu_based
if want filter ceramic, cu_based, ni_based how ?
you can use 'q'
from django.db.models import q self.fields['categorie'].queryset = category.objects.filter(q(name__icontains = 'cu_based') | q(name_icontains = 'ceramic') | q(name_icontains = 'ni_based'))
Comments
Post a Comment