簡體   English   中英

如何在Django中為第三方REST服務進行分頁/分頁

[英]How to do paging/pagination in Django for 3rd party REST services

以flickr為例,請求URL如下所示:

'http://api.flickr.com/services/rest/?&method=flickr.people.getPublicPhotos&api_key=' + settings.FLICKR_API_KEY + '&user_id=' + userid + '&format=json&per_page' + per_page + '&page=' + page + '&nojsoncallback=1'

其中page控制要顯示的頁面,而per_page控制要返回的照片數

為簡化起見,讓我們固定per_page 所以我的問題是,如何實現允許用戶隨時在網頁上向前或向后翻一頁的分頁系統?

我想我需要傳遞頁碼來遍歷請求URL,以便顯示正確的數據。 所以我想我不確定如何將模板綁定到views.py。 本質上,我正在尋找該Rails問題的Django版本。

到目前為止,我遇到的示例和插件(例如django-pagination)主要處理數據庫查詢產生的分頁。

Django-pagination將與任何對象列表一起使用-不僅僅是從數據庫中調用。 此處的示例實際上從與本地模型或數據庫無關的示例開始。

對於API類型的調用,您只需要將對象讀入列表,然后根據該列表創建一個新的Paginator對象。 您所要做的就是為每頁提供所需的對象數。 這真的非常簡單。

就您的描述而言,我想說的是從page = 1開始。如果page = 1,則頁面中有一個鏈接要前進,這將加載page =2。如果您在除1之外的任何其他頁面中,則生成兩個鏈接,相對於當前頁面,一個用於上一頁,另一個用於下一頁。

如果您想獲得更好的幫助,則必須向我們展示一些代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM