У меня есть простая модель Django и поиск Q, и все работает так, как ожидалось, но я хотел бы, чтобы результаты фильтрации отображались в отдельном DIV, сохраняя исходный список запросов без фильтрации в аннотации в прикрепленное изображение. Ниже приведен мой код, аннотированный снимок экрана и ссылка на страницу на dev-сервере. Любая инструкция будет отличной. Спасибо.Django Q Отфильтрованные результаты в отдельном DIV
Посмотреть
def plaque_list(request):
today = timezone.now().date()
queryset_list = Plaque.objects.active().order_by("first_name")
if request.user.is_staff or request.user.is_superuser:
queryset_list = Plaque.objects.all().order_by("first_name")
query = request.GET.get("q")
if query:
queryset_list = queryset_list.filter(
Q(first_name__contains=query) |
Q(last_name__icontains=query)
).distinct()
paginator = Paginator(queryset_list, 8) # Show 25 contacts per page
page_request_var = "page"
page = request.GET.get(page_request_var)
try:
queryset = paginator.page(page)
except PageNotAnInteger:
# If page is not an integer, deliver first page.
queryset = paginator.page(1)
except EmptyPage:
# If page is out of range (e.g. 9999), deliver last page of results.
queryset = paginator.page(paginator.num_pages)
context = {
"object_list": queryset,
"queryset_list": queryset_list,
"title": "Locate a Veteran",
"page_request_var": page_request_var,
"today": today,
}
return render(request, "plaques/plaque_list.html", context)
Шаблон
...
{% for obj in object_list %}
<tr>
<th><a href="{{ obj.get_absolute_url }}">{{ obj.first_name }}</a></th>
<th><a href="{{ obj.get_absolute_url }}">{{ obj.last_name }}</a></th>
<th>{{ obj.branch }}</th>
<th>{{ obj.rank }}</th>
<th>{{ obj.wall|upper }}</th>
<th>{{ obj.direction|title }}</th>
<th>{{ obj.row }}</th>
<th>{{ obj.plaque_num }}</th>
</tr>
...
{% endfor %}
Dev Сервер Ссылка http://www.new.soledadmemorial.com/plaques/
Почему бы не создать отдельный qs для фильтрации результатов и передать их в контекст шаблона? – devxplorer