【问题标题】:Ruby on Rails link_to route path while preserving original query string parametersRuby on Rails link_to 路由路径,同时保留原始查询字符串参数
【发布时间】:2012-08-02 01:02:37
【问题描述】:

我有一个类似http://example.com/?sort=pop的网址

在我看来,我正在使用link_to category.name, categories_path(category)

如何保留请求 URL 上可能已存在的任何查询字符串参数?

所以最终链接 URL 将是 http://example.com/categories/1?sort=pop

【问题讨论】:

    标签: ruby-on-rails html-helper


    【解决方案1】:
    <%= link_to category.name, category_path(category,
      request.parameters.merge({:new_params => 42}) ) %>
    

    这应该链接到正确的路径,保留现有参数并添加您可能拥有的任何新参数。

    Rails: Preserving GET query string parameters in link_to

    【讨论】:

      【解决方案2】:

      Anthony 的解决方案几乎对我有用。但是,它不喜欢将params 作为传递变量之一。相反,我必须将params::params =&gt; 添加到链接中。它现在只适合我。

      &lt;%= link_to "XLS ", users_path(format: "xls", params: params) %&gt;

      【讨论】:

        【解决方案3】:
        <%= link_to category.name, category_path(category, params) %>
        

        应该做的伎俩

        注意访问特定类别的默认路由助手是category_path。单数,因为它只针对一个类别,所以有意义!

        【讨论】:

          猜你喜欢
          • 2011-04-15
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-08-14
          • 2014-09-17
          • 1970-01-01
          • 2021-06-13
          • 2017-06-26
          相关资源
          最近更新 更多