【问题标题】:Django ListView paginate extra contextDjango ListView 分页额外上下文
【发布时间】:2015-05-04 12:51:09
【问题描述】:

我正在尝试将不同的查询集传递给我的模板,为此我已经像这样覆盖了 get_context_data:

class MainList(ListView):
    queryset = models.Tickets.objects.order_by('-pk')
    template_name = 'index.html'
    context_object_name = 'tickets_desc_pk'
    paginate_by = 5

    def get_context_data(self, **kwargs):
        context = super(MainList, self).get_context_data(**kwargs)
        context['tickets_inc_date'] = models.Tickets.objects.order_by('set_date')
        return context

一切正常,直到我决定对表格进行分页,paginate_by 仅适用于主要上下文(tickets_desc_pk)。 有谁知道,如何分页另一个上下文?还是我应该通过 JS/JQuery 在客户端执行此操作?

        <table class="table table-condensed">
    <tbody>
    {% for ticket in tickets_inc_date %}
        <tr>
            <td>{{ ticket.pk }}</td>
            <td>{{ ticket.topic }}</td>
            <td>{{ ticket.set_date }}</td>
            <td>{{ ticket.priority }}</td>
        </tr>
    {% endfor %}
    </tbody>
</table>
        <table class="table table-condensed">
    <tbody>
    {% for ticket in tickets_inc_date %}
        <tr>
            <td>{{ ticket.pk }}</td>
            <td>{{ ticket.topic }}</td>
        </tr>
    {% endfor %}
    </tbody>
</table>

【问题讨论】:

    标签: django listview pagination


    【解决方案1】:

    如果您还没有,我建议您使用 django-endless-pagination,它在我的所有项目中都运行良好。你可以阅读文档here

    【讨论】:

    • 非常感谢,django 似乎无法“从盒子里”处理我的需求,或者我懒得使用通用视图和编写 spagetti 代码。我会用 ajax 解决我的问题。
    猜你喜欢
    • 2015-06-18
    • 2016-01-15
    • 1970-01-01
    • 2022-10-05
    • 2012-05-04
    • 2020-09-20
    • 1970-01-01
    • 2013-05-21
    • 1970-01-01
    相关资源
    最近更新 更多