Возвращение множества объектов на html-странице - Django 2.0 - PullRequest
0 голосов
/ 26 декабря 2018

Я возвращаю "comentarios" объекты базы данных через for, но, поскольку отображение этих объектов занимает много места на html-странице, я хотел бы знать, как разделить объекты на несколько списков илив скрытое пространство, поскольку, когда они переходят из семи комментариев, они превышают размер тела.

template.html

{% extends 'baseR.html' %}
{% load static %}
{% block title %} Comentários - SMILE 3D {% endblock %}
{% block tamanho %} 2000px {% endblock %}
{% load bootstrap %}

{% block main %}

<div class="row b2">
     <div class="col-1"></div>
     <div class="col-10">
            <h3 style="color:royalblue; font-weight:bold;">Pregão: </h3>

         <hr>
         <h2>{{msg}}</h2>
         <br>
         <ul style="list-sytle:none;">
             <div class="container pregoes">

                <li style="list-style:none;">
                    <p><strong>Dono: </strong><a href="{% url 'perfil-geral' pregoe.usuario.id %}" class="cNome">{{pregoe.usuario}}</a></p>
                    <p><strong>Tipo do pregão: </strong>{{ pregoe.tipo }}</p>
                    <p><strong>Dente: </strong>{{ pregoe.dente }}</p>
                    <p><strong>Cor: </strong>{{ pregoe.cor }}</p>
                    <p><strong>Escala: </strong>{{ pregoe.escala }}</p>
                    <p><strong>Material: </strong>{{ pregoe.material }}</p>
                    <p><strong>Observações: </strong>{{ pregoe.extra }}</p>
                    <p><strong>Preço inicial: </strong>R${{ pregoe.preco }}</p>
                    <p><strong>Data de registro: </strong><em>{{ pregoe.data }}</em></p>
                    <p><strong>Prazo: </strong><em>{{ pregoe.prazo }}</em></p>
                </li>
             </div>
             <br>
             <hr>
             **<h3>Comentários: </h3>
             {% for comentario in comentarios %}
                 <div class="container" style="background-color:gainsboro; padding-bottom:2px; padding-top:10px;">
                         <a href="{% url 'delete-comentario' comentario.id %}"><i class="far fa-times-circle" style="float: right;"></i></a>
                         <a href="{% url 'perfil-geral' comentario.user.id %}" class="cNome"> <p><strong>{{comentario.user}}</strong> </p></a>
                         <p style="float:right;">{{comentario.comentario}}</p>

                     <div class="circle1">
                         <a href="{% url 'perfil-geral' comentario.user.id %}"><img src="../../media/{{comentario.user.foto}}" class="fotoPerfil img-fluid" style="max-width: 80px;"></a>
                     </div>
                 </div>
                 <br>
             {% endfor %}**
             <br>
             {{msg}}

             <a href="{% url 'novo-comentario' pregoe.id user.id %}" style="float:right; margin-top:-20px; margin-left:8px;">  NOVO COMENTÁRIO  <i class="far fa-comment"></i></a>
         </ul>
     </div>
</div>
{% endblock %}

views.py

@login_required
def listaComentarios(request, id1, id2):
    user = get_object_or_404(CustomUser, pk=id2)
    pregao = get_object_or_404(Pregao, pk=id1)
    comentarios = Comentario.objects.all().filter(pregao=pregao)
    if user == pregao.usuario:
        return render(request, 'comentarios/lista-comentarios-dono.html', {'comentarios': comentarios, 'pregoe': pregao})
    return render(request, 'comentarios/lista-comentarios.html', {'comentarios': comentarios, 'pregoe': pregao})

1 Ответ

0 голосов
/ 29 декабря 2018

Вам нужно добавить нумерацию страниц, и вы получите свой набор запросов по частям.

Вы можете получить информацию о в официальных документах Django.https://docs.djangoproject.com/en/2.1/topics/pagination/#using-paginator-in-a-view

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...