應用WillPaginate分頁

2021-06-02 19:22:59 字數 1128 閱讀 5850

rails

sqlruby

willpaginate這個外掛程式很棒,以至於其取代了rails中原有的paginate方法,雖然看上其很簡單,其實還是有不少技巧的,本篇用來記錄我遇到的或者使用到的一些tips。

1.直接使用paginate

這個比較簡單,也是使用的最多的,如下:

ruby**

defself.get_all_items_in_catelog( catelog_id,page,per_page="10")  

paginate :per_page => per_page, :page => page,  

:conditions =>["catelog_id = ? and caiji > 0",catelog_id],  

:order => 'created_at desc ,updated_at  desc'

end

2.使用model.paginate_by_sql

有的時候,你需要的sql用rails拼的時候有些不方便,這個時候可以考慮使用paginate_by_sql來實現,這個沒啥好說的,你需要什麼樣的sql直接寫就可以了,例如:

#排行榜列表

ruby**

defself.get_all_items_in_rank(rank_id, page,per_page="10")  

book.paginate_by_sql ["select distinct `books`.* from `books` left outer join `ranksorts`

on (`books`.`prodid` = `ranksorts`.`prodid`) left outer join `ranks` 

on (`ranks`.`id` = `ranksorts`.`rank_id`) where (ranks.id = ?)

order by books.updated_at desc,books.created_at desc", rank_id],  

:page => page, :per_page => per_page  

end

還有其他的一些小技巧,慢慢新增,你如果有類似的技巧,期待您的分享。。

應用WillPaginate分頁

willpaginate這個外掛程式很棒,以至於其取代了rails中原有的paginate方法,雖然看上其很簡單,其實還是有不少技巧的,本篇用來記錄我遇到的或者使用到的一些tips。1.直接使用paginate 這個比較簡單,也是使用的最多的,如下 ruby defself get all item...

修改will paginate支援ajax方式

網上關於will paginate支援ajax的文章不少,可是看了一下,都比較舊了,在最新更新的will paginate外掛程式下用不了,所以就自己改了一下 在viewhelper.rb中 code pagination options code 增加update 修改為 code paginat...

Shell典型應用Nginx之應用日誌分析

nginx 日誌相關指令主要有兩條,一條是log format,用來設定日誌格式,另外一條是access log,用來指定日誌檔案的存放路徑 格式和快取大小,通俗的理解就是先用log format來定義自己想用的日誌格式,然後在用access log定義虛擬主機時或全域性日誌時 在把定義的log f...