我試圖用will_paginate gem是做分頁:PAGINATE近20款,Ruby on Rails的(will_paginate gem是)
@books = Book.joins(:ads).last(20).page(params[:page]).per_page(10)
但我發現了這個錯誤:未定義的方法`頁」爲# < \ Array:0x007fc3ef37d308>我似乎無法弄清楚什麼是錯的。分頁工作在其他操作中很有魅力。
謝謝! :)
我試圖用will_paginate gem是做分頁:PAGINATE近20款,Ruby on Rails的(will_paginate gem是)
@books = Book.joins(:ads).last(20).page(params[:page]).per_page(10)
但我發現了這個錯誤:未定義的方法`頁」爲# < \ Array:0x007fc3ef37d308>我似乎無法弄清楚什麼是錯的。分頁工作在其他操作中很有魅力。
謝謝! :)
請勿使用last
,因爲這將觸發查詢執行。改爲使用reverse_order
和limit
。
Book.joins(:ads).reverse_order.limit(20).page(params[:page]).per_page(10)
類似太謝謝你了!這解決了它 –
如果你仍然想分頁數組:
require 'will_paginate/array'
然後用
Array#paginate
https://github.com/mislav/will_paginate/wiki/Backwards-incompatibility(頁面的最下方)
來源:
https://github.com/mislav/will_paginate/blob/2-3-stable/lib/will_paginate/array.rb https://github.com/mislav/will_paginate/blob/master/lib/will_paginate/array.rb
謝謝!我會將此標記爲有用的,但我的代表太低:) –
到http://stackoverflow.com/questions/13187076/paginating-an-array-in-ruby-with-will-paginate – rlecaro2