grid 裡已經有處理分頁的部分,官方的文件沒提到的幾點:
- 自訂 column 的標題:如果你的 model 裡已經有加上去的話,它會自動去抓,但是如果是自訂的欄位,就要這樣用:columns = ( ('field1', '欄位1'), ('field2', '欄位2'), )
- 刪除:grid 有定義這個,在定義 columns 的時候,要使用 __delete__,例如: columns = ( ('field1', '欄位1'), ('field2', '欄位2'), ('__delete__', '刪除'), )
- 自行定義欄位:要額外增加 custom_columns,其形態是 dict,grid 在遇到裡面指定的元素時,會改用你定義的 template 去顯示,來達到自定義的效果:custom_columns={ 'field1': 'app/custom_field1.html' }
- l10n:grid 沒有做這部分,這就要自己去改 template 了。
總結範例:
from grid import Grid class MyGrid(grid): model = your_model columns = ( ('field1', '欄位1'), ('field2', '欄位2'), ) sortable = ('field1',) custom_columns={ 'field1': 'app/custom_field1.html' }
沒有留言:
張貼留言