0

私のroutes.rbで私は持っています

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

私は次のようなリンクがたくさんあります

  • 地球
  • 飛行

ただし、ルートの:categoryとして「Water」または「Fire」を渡すのに問題があります。どのくらい正確にそれをしますか?

私は次のようなことを試みました...

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

しかし、構文的にはそれはできません。:categoryシンボルとして「水」を渡すにはどうすればよいですか?

ありがとう!

4

1 に答える 1

3

link_tocategoryで:を指定する必要はありません。これをしている間:

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

ルートは水を:categoryパラメーターに一致させるため、コントローラーでアクセスできparams[:category]が値になります。ルートでは、「monsters/」の後に続くものはすべてカテゴリパラメータとして認識されるとすでに言っていることに注意してください。

名前付きルートがある場合は、次のようなパラメータを渡すことができることに注意してください。

<%= link_to "Up", monster_path(:category => "water") %>
于 2012-04-21T02:04:51.987 に答える