rails,如何从link_to帮助器传递变量

时间:2012-04-21 02:00:00

标签: ruby-on-rails routes link-to

在我的routes.rb中我有

match "monsters/:category" => "monsters#index"

我有一堆链接,例如

  • 地球
  • 飞行

然而我无法将“水”或“火”作为我的路线的类别。 我到底怎么做?

我尝试了类似......

<%= link_to "Water", "monsters/water"(:category => "water") %>

但语法上我无法做到这一点。我如何传递“水”作为:类别符号?

谢谢!

1 个答案:

答案 0 :(得分:3)

您无需在 link_to 中指定:category。这样做:

<%= link_to "Water", "monsters/water" %>

您的路线会将水与:category参数匹配,因此您可以在控制器中访问params[:category]将是值。请注意,在您已经说过的路线中,“monsters /”之后的任何内容都将被识别为类别参数。

请注意,如果您有Named Routes,则可以传递如下参数:

<%= link_to "Up", monster_path(:category => "water") %>