我在自定义页面上使用kaminari分页,但它生成/基于资源的URL:
http://localhost:3000/assets?action=my&controller=blogs&page=2
我需要:
http://localhost:3000/blogs/my?page=2
错误:
No route matches [GET] "/assets"
有什么建议吗?
答案 0 :(得分:3)
我尝试使用Kaminari或Will_paginate进行自定义操作的分页时遇到了完全相同的问题。事实证明问题出在我的routes.rb文件中。
例如,我的自定义操作在'cards'控制器中称为'all_credit'。以前在routes.rb我有:
match '/cards_credit' => 'Cards#all_credit'
这给了我上面描述的相同行为并生成基于资源/的网址。
将routes.rb中的行更改为:
match '/cards_credit(/:page)', :controller => 'cards', :action => 'all_credit'
我能够解决这个问题,现在正在正确生成分页链接。
答案 1 :(得分:1)
我通过添加控制器参数来解决。
<%= paginate @blog , :params => {:controller => "GoogleUsers"} %>