iT邦幫忙

0

(已解決)關於DRF的LimitOffsetPagination設定,Response無法顯示分頁的相關資訊

  • 分享至 

  • xImage

近日以DRF的框架結合Swagger渲染出一個API的介面,希望能以此Get到資料庫內的內容並以LimitOffsetPagination的分頁方式呈現其資料,目前是已經成功的連接Django與SQL的資料表,並可呈現其資料在頁面上,但Response的部分卻無法出現count、next、previous、results等相關資訊,本以為應該是LimitOffsetPagination預設就會出現的QQ,結果都沒有跑出來。

現在是打算在views.py的return Response的地方做編輯,看是否能夠以此方式顯示count、next、previous等資訊,但是遇到了名為
AssertionError: Expected a Response, HttpResponse or HttpStreamingResponse to be returned from the view, but received a <class 'NoneType'>
還無法解決,想請教各位大大是否能夠協助解決,或是有比較好的設定方式!

此為目前能夠呈現的狀態
https://ithelp.ithome.com.tw/upload/images/20220307/20147143dAw0zrngJC.png

此為期望顯示的資訊
https://ithelp.ithome.com.tw/upload/images/20220307/20147143HpXjhfGcUQ.png

views.py
https://ithelp.ithome.com.tw/upload/images/20220307/20147143sBNnWHxLl3.png

settings.py
https://ithelp.ithome.com.tw/upload/images/20220307/20147143ggqYoWg2Vk.png

目前的錯誤訊息
https://ithelp.ithome.com.tw/upload/images/20220307/201471434Qtxt32Hge.png

froce iT邦大師 1 級 ‧ 2022-03-15 15:28:11 檢舉
恭喜你解決了,不過我是來告訴你另外一套做rest framework的好工具的。
django-ninja。django-ninja基本上是django+fastapi,能輕鬆產出open-api,而且比DRF簡單易用多了。

DRF我只用過一次後面我就放棄了,寫rest看的文件比寫的code還多,而且太笨重不適合利用async搭配asgi,響應速度也不夠快。

不回答這題的原因是DRF真的離我太久了,想回也沒辦法回答你。
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友回答

立即登入回答