Django的sqlpaginator是一個Django應用程序使用原始SQL的模型,做分頁和排序。
安裝
從安裝的PyPI
PIP安裝Django,sqlpaginator
從混帳獲得最新(以及可能的非穩定版)
PIP安裝混帳混帳+://github.com/bulkan/django-sqlpaginator.git
你還需要安裝sqlparser
PIP安裝混帳混帳+://github.com/andialbrecht/sqlparse.git
在settings.py
  INSTALLED_APPS =(
  ...
 “sqlpaginator',
  ...
 )
就是這樣!!
用法
幾乎相同django.core.pagination.Paginator
如果你有以下型號
 類專輯(models.Model):
  ALBUMID = models.IntegerField(primary_key =真,db_column = u'AlbumId')
 標題= models.TextField(db_column = u'Title')
  artistid = models.IntegerField(db_column = u'ArtistId')
 一流的藝術家(models.Model):
  artistid = models.IntegerField(primary_key =真,db_column = u'ArtistId')
 名稱= models.TextField(db_column = u'Name',空=真)
並希望在分頁相冊,那裡面的視圖;
 從sqlpaginator.paginator進口SqlPaginator
 從車型導入相冊
  DEF get_albums(請求,頁面= 1):
  SQL =“SELECT * FROM%的”%Album._meta.db_table
 分頁程序= SqlPaginator(SQL,相冊,網頁=頁,ORDER_BY ='標題')
 嘗試:
 相冊= paginator.page(頁)
 除PageNotAnInteger:
 #如果頁面不是整數,傳遞第一頁。
 相冊= paginator.page(1)
 除EmptyPage:
 #如果頁面超出範圍(如9999),提供結果的最後一頁。
 相冊= paginator.page(paginator.num_pages)
 返回render_to_response('albums_list.html',{'相冊':專輯})
在模板albums_list.html
  {%為專輯專輯%}
  {#每個“專輯”是一個相冊樣板對象。 #}
  {{album.title |上}}
  {%ENDFOR%}
 
 的
  {%,如果albums.has_previous%}
&NBSP; <“?頁= {{albums.previous_page_number}}”A HREF =>以前
&NBSP; {%ENDIF%}
&NBSP;的
&NBSP;第{{albums.number}}的{{albums.paginator.num_pages}}。
&NBSP;
&NBSP; {如果%albums.has_next%}
&NBSP; <“?頁= {{albums.next_page_number}}”A HREF =>接下來
&NBSP; {%ENDIF%}
&NBSP;
&NBSP;
要求:
- 在Python中
- 在Django的
評論沒有發現