I'm using django filters but I can't get the filter form to actually render on the page, only the submit button is showing. If I inspect the element, nothing else seems to be being sent to the template. THere is no error message or anything, I don't know where to go from here, how do I get the actual form to show,
filter.py
from django.contrib.auth.models import User
import django_filters
from .models import Project
class ProjectFilter(django_filters.FilterSet):
class Meta:
model = Project
fields = ['user', 'title']
views.py:
def search_view(request):
project_list = Project.objects.all()
project_filter = ProjectFilter(request.GET, queryset=(project_list)
return render(request, 'project_portal/filter.html', {'filter': project_filter})
urls.py:
path('search/', search_view, name='search'),
html:
{% load crispy_forms_tags %}
<!DOCTYPE html>
<div>
<form method="get">
{{ filter.form.as_p }}
<input type="submit"/>
</form>
{% for user in filter.qs %}
{{ user.title }}
{% endfor %}
</div
i think your error ... ==> project_filter = ProjectFilter(request.GET, queryset=(project_list) must be : project_filter = ProjectFilter(request.GET, queryset=project_list)