0

我有一些排序的查询集即时传递给模板。每页显示多个分页。问题是在第一个分页项目之后,后续项目失去了排序。这是我的代码:

视图.py

    def entry_index(request, parent_cat, child_cat, template='entry_index.html',  
                    page_template='entry_index_page.html'):  
                context = { 'items_by_percentage_saved':  
                     Item.objects.filter(category=category).order_by('-percentage_saved'),  }
                if request.is_ajax():
                    template = page_template
                    return render_to_response(template, context,  
                                              context_instance=RequestContext(request))

by_percentage_saved.html

{% load endless %}
{% paginate items_by_percentage_saved %}
{% for item in items_by_percentage_saved %}
<div class="large-4 small-6 columns">
  <a class="th" href=""><img style="height: 12em;" src={{ item.image_url }}></a>

  <div class="panel">
    <h5>{{ item.title|truncatechars:50 }}</h5>
    ...
  </div>
</div>
{% endfor %}
{% show_more %}

更新 我做了更多的调试,查询items_by_percentage_saved集肯定是排序的entry_index()。我放了几个断点,by_percentage_saved.html看看我是否能弄清楚发生了什么,但奇怪的是,在您单击“更多”以获取下一个分页数据后,entry_index()再次调用但断点不会再次触发by_percentage_saved.html,即使新的分页数据生成。谈论混乱

4

1 回答 1

0

好的,通过再次浏览文档并使用页面装饰器来解决它。文档有点让人觉得这些是可选的,但我猜它们是同一页面上多个分页的要求。

from endless_pagination.decorators import page_template @page_template('entry_index_page.html')
@page_template('by_percentage_saved.html', key='by_percentage_saved')
def entry_index(request, parent_cat, child_cat, template='entry_index.html',
extra_context=None):

于 2013-08-28T16:05:18.503 回答