Python Forum

Full Version: Django - Retrieve form data
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hey all,

I created checkboxes with form for filter data from my model.
JavaScript code add textbox when checkbox is enabled.
My problem is that I don't know how to retrieve data from textbox and filter by view my template.

Example of my code:

Views.py

def filtar(request):
    form = ChoiceForm(request.GET or None)
    data = Clanak.objects.all()    
    if form.is_valid():
        if 'name' in form.cleaned_data['filter']:
            data = data.filter(naslov=form.cleaned_data['name'])
        if 'year' in form.cleaned_data['filter']:
            data = data.filter(datumObjave__year=form.cleaned_data['2019'])
    return render(request, 'filtar.html', {'data': data, 'form': form})
forms.py

class ChoiceForm(forms.Form):
    filter = forms.MultipleChoiceField(choices=(('year', 'Year'), ('name', 'Name')), widget=forms.CheckboxSelectMultiple(attrs={'id': 'choice', 'class': 'myclass'}))
models.py
class Clanak(models.Model):
	naslov = models.CharField(null=False, blank=True, max_length=120)
	datumObjave = models.DateField(null=False, blank=False)
	autor = models.ForeignKey(Autor, on_delete=models.CASCADE, null=True)	
	videofile= models.FileField(upload_to='images/', null=True, verbose_name="")

	def __str__(self):
		return str(self.naslov) + ', ' + str(self.datumObjave) + ', ' + str(self.autor) + ', ' + str(self.videofile)
footer.html

https://codeshare.io/5XXgbK


It looks like:

[Image: Capture.png]

My problem is that filters don't work at all, page just refresh and keep showing all data.