查询字符串在所有控制器中都存在错误

时间:2012-03-20 22:28:44

标签: ruby-on-rails routes params

我有一个rails 3应用程序,我传递了一些字符串查询:

<%= link_to "All", work_orders_path(params.merge({:status_filter => "E", :sort_filter => params[:sort_filter]})) %>

在我对work_order的看法中,一切都是持久性的,这就是这些参数的用途(排序和过滤现有的工单)。

我遇到的问题是,当我使用link_to添加新工单或尝试link_to到另一个控制器时,:status_filter:sort_filter都是持久的,导致路由错误。

例如,当我想点击索引查看所有技术人员时(其中这些不适用我得到

  

没有路线匹配{:sort_filter =&gt; nil,:status_filter =&gt;“E”,   :控制器=&gt; “中的技术人员”}

我到处寻找解决方案,但到目前为止,我还是无法想出任何东西。我试过params.delete,没有骰子。我知道必须有一种简单的方法来清除link_to中的网址,但我无法弄明白。

1 个答案:

答案 0 :(得分:0)

我发现我所有导航的这些链接都在我的application.html.erb中,因此我在那里使用的任何参数都会在整个应用程序中传输。我还是没弄明白为什么。我将这些链接移动到work_orders中的index.html.erb文件,现在其他所有内容都可以正常工作。