my view.py
class Formtestview(FormView):
template_name = 'test.html'
form_valid(self, form):
'my code to search' => 'result is object_list'
page = self.request.GET.get('page','1')
paginate = Paginator(object_list, 10)
page_obj = paginator.get_page(page)
return render(self.request, 'test.html', {'form':self.form_class, 'object_list':object_list, 'page_obj' = page_obj})
As in the code above, input is received through form_valid, paged, and then sprayed on the same html template.
Results and paging are also displayed normally, but if you go to another page like ?page=2, only the basic template without all the results is shown.
Is there a way to paginate the form and search results in one template?
Why did you use
FormView? Pagination comes with MultipleObjectMixin. For simplicity, you can useListViewrather thanFormView. ListView is inherited fromMultipleObjectMixin.This example is from docs: