Kaminari错误的网址在视图中

时间:2013-07-19 15:28:08

标签: ruby-on-rails ruby-on-rails-3.2 pagination kaminari

我发现了关于Kaminari的类似问题,但是我的机器上没有一个答案。

基本上,当我进行分页时,页面数量是正确的,但我重定向到的URL是错误的。 下面这个是我控制器中的动作

def index_offered

  @machines = Machine.not_sponsored.offered.order("created_at DESC").page(params[:page]).per(5)

end

现在,当我在视图中实现Kaminari时

<%= paginate @machines%>

我获得了3页(正确)的分页,链接是:

0.0.0.0:3000/?page=2
0.0.0.0:3000/?page=3

虽然他们应该

0.0.0.0:3000/offered-machinery?page=2
0.0.0.0:3000/offered-machinery?page=3

捕获物是否可以嵌套在路由中?这是关于index_offered动作的路线

  match 'offered-machinery' => 'machines#index_offered', :as => :offered_machinery

我还尝试通过输入

在视图中传递params
<%= paginate @machines , :params => {:controller => "Machines" , :action => 'index_offered'}%>

并取消注释routes.rb中的行:

   match ':controller(/:action(/:id))(.:format)'

但在这种情况下,我改为获取这些网址:

0.0.0.0:3000/Machines/offered-machinery?page=2
0.0.0.0:3000/Machines/offered-machinery?page=3

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

尝试将de控制器名称更改为“machines”:

 {:controller =&gt; “机器”,:action =&gt; 'index_offered'}%GT;