我有一個自定義模型(不是由數據庫下的任何表映射)。這個自定義模型只是聯合許多其他表數據的結果。我想用kaminari來分頁。Kaminari:自定義模型分頁
例如:
def index
@custom_models = find_all_items # result is an array
render
end
然後我分頁上查看這些項目:
= paginate @custom_models
當我運行此,我遇到例外:
未定義的方法`TOTAL_PAGES'對於陣列:0x007fb4dde63c70
我的問題是:如何使用Kaminari作爲自定義模型文件。
@Edit 我可以用雷現在,只要使用這行:
@custom_models = Kaminari.paginate_array(@custom_models)
.page(params[:page]).per(params[:per_page])
但現在我遇到的問題:因爲這是定製機型,我使用自定義查詢。我使用原始sql查詢和我自己使用offset
和limit
關鍵字分頁。
例如,我返回25條記錄,默認的Kaminari每頁顯示25條記錄,所以我只能看到1頁。我可以查詢返回所需的全部記錄(例如1000條記錄),但我不知道如何讓Kaminari瞭解這一點並顯示足夠的頁面。
感謝
我試過你的選擇。但我遇到了名爲:'undefined method'total_pages'for #Array:0x007fb4daca5288'的異常。關於分頁,我自己分頁查詢(使用偏移量和限制關鍵字)。 –
如果您在模型中分頁,那麼您可能還需要手動計算頁數。請更新您的問題,詳細信息請參見代碼,型號和控制器級別 –
我已更新我的問題。請看一下。謝謝 –