2013-08-28 53 views
0

我有一些排序後的查詢集傳遞給模板。每頁顯示多個分頁。問題出現在第一系列分頁的項目之後,隨後的分類失去了意義。這裏是我的代碼:丟失排序後的查詢集使用Django-Endless-Pagination

views.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中放了幾個斷點,看看我能否弄清楚發生了什麼,但奇怪的是,在點擊「more」獲取下一個分頁數據後,entry_index()被再次調用,但是斷點從未在by_percentage_saved.html中第二次觸發,儘管生成新的分頁數據。談論混淆

+0

我不知道,如果它只是一個錯字,但你是騎自行車過'page_items'而不是ìtems_by_percentage_saved'。這可能是問題嗎? – Germano

+0

「{%paginate items_by_percentage_saved%}」做了什麼? – EWit

+0

@Germano,很好的地方,是的,這是我嘗試了幾個不同的東西,讓它工作的錯字。 Haved修正了錯字。 – KingFu

回答

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):