通过rails中的链接将文本附加到当前URL

时间:2011-01-27 02:40:13

标签: ruby-on-rails ruby ruby-on-rails-3

让我们说用户所在的当前页面是:

http://0.0.0.0:3000/posts?direction=asc&sort=title

按标题排序升序。

现在假设我有一个搜索引擎,如果你搜索“鸡”,那么网址可能是:

http://0.0.0.0:3000/posts?direction=asc&search=chicken&sort=title

但是,我不想搜索,而是建立<a href="CODE HERE">Show all results for chicken</a>这样的链接,将&amp; search = chicken附加到网址,或者如果搜索已经有值,则替换它。

这可能吗?

1 个答案:

答案 0 :(得分:6)

您可以在没有指定控制器/操作的情况下使用link_to功能。只需提供您想要的参数,就会为当前页面加上这些参数创建一个URL。

请注意,您需要使用现有的params哈希并合并到其他:search项中,否则您的directionsort参数将从网址中删除。此外,如果存在params[:search]项,则合并将覆盖该项。

<%= link_to "Show all results for chicken", params.merge({:search => "chicken"}) %>