查询结果后如何使用分页?

2024-10-01 00:19:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我试着用两个参数做一个搜索功能。一切正常,直到我想使用分页。 我一直在测试它,每页只显示一个元素。这是有效的,直到我想改变页面。在

当我更改页面时,即使我有应该显示在数据库中的条目,也没有得到任何结果。在

Tbh我认为我应该以某种方式存储搜索参数,并在页面更改时执行查询,但这对我来说没有意义。如果每次更改页面时仍要执行查询,分页有何帮助?在

在视图.py在

def cautare(req):
    intrari_oferte = Oferta.objects.get_queryset().distinct('denumireMeserie')
    context = {
        'title': "Cautare loc de munca | Best DAVNIC73",
        'oferte': intrari_oferte
    }
    return render(req, "../templates/pagini/cautare-loc-de-munca.html", context)

def locuridemunca(req):
    jud = req.POST.get('inputjudet')
    meserie = req.POST.get('inputmeserie')
    intrari_oferte = Oferta.objects.filter(judet=jud, denumireMeserie=meserie)
    pagIntrari = Paginator(intrari_oferte, 1)
    page = req.GET.get('page')
    pagina = pagIntrari.get_page(page)
    context = {
        'title': "Cautare loc de munca | Best DAVNIC73",
        'judet': jud,
        'meserie': meserie,
        'pagina': pagina
    }
    return render(req, "../templates/pagini/locuri-de-munca.html", context)

尾状模板

^{pr2}$

Sociri de munca模板

{% extends 'base.html' %}
{% load static %}
{% block content %}
            <div class="container container-munca">
                {% if pagina %}
                <h1 class="heading-munca">Locuri de munca de {{meserie}} din judetul {{judet}}</h1>
                <div class="row">
                {% for oferta in pagina %}
                    <div class="col-md-4">
                        <div class="card card-custom">
                            <div class="card-body">
                              <h5 class="card-title">{{oferta.denumireMeserie}}</h5>
                              <h6 class="card-subtitle mb-2 text-muted">{{oferta.agentEconomic}}</h6>
                              <p class="card-text">{{oferta.adresa}}</p>
                              <a href="#" class="card-link">Card link</a>
                            </div>
                        </div> 
                    </div>
                {% endfor %}
              </div>
              {% if pagina.has_other_pages %}
              <div class="row">
                <div class="col-md-12">          
                    <ul class="pagination">
                        {% if pagina.has_previous %}
                        <li class="page-item">
                          <a href="?page={{pagina.previous_page_number}}" class="page-link">&laquo;</a>
                        </li>
                        {% else %}
                        <li class="page-item disabled">
                            <a class="page-link">&laquo;</a>
                          </li>
                        {% endif %}
                          <li class="page-item active">
                            <a class="page-link">1</a>
                          </li>
                        {% if pagina.has_next %}
                        <li class="page-item">
                          <a href="?page={{pagina.next_page_number}}" class="page-link">&raquo;</a>
                        </li>
                        {% else %}
                        <li class="page-item disabled">
                            <a class="page-link">&raquo;</a>
                        </li>
                        {% endif %}
                    </ul>
                </div>
            </div>
            {% endif %}
                {% else %}
                <div class="row">
                    <div class="col-md-12">
                        <div class="card card-custom">
                            <div class="card-body">
                              <h5 class="card-title" style="text-align: center;">Nu am putut gasi rezultate!</h5>
                            </div>
                        </div> 
                    </div>
                </div>
                {% endif %}            
            </div>              
{% endblock %}

cautare=搜索,Ocori de munca=工作。 基本上,我想做一个小应用程序,让人从数据库搜索现有的工作,在一个特定的县。(judet=县)

那么我怎样才能使分页工作呢?现在当我更改页面时,我没有得到任何结果。在


Tags: divgetpagelinkde页面licard