1

我在 config/routes.rb 文件中添加了以下行:

get '/movies/similar', :contoller => 'movies', :action => 'similar'

我看到有一个带有 name 的辅助方法'movies_similar_path'。我想添加一个'movies_similar_path'名为'director'的get参数,这样我就可以得到'/movies/similar?director=someone'

我该怎么做?

4

3 回答 3

5

无需在帮助器中定义参数,您可以在link_to.

link_to "Similar", movies_similar_path(:director => @director.id)
于 2012-08-17T11:30:45.627 回答
0
  1. 注意到您的路线行中“控制器”中的错字了吗?
  2. 您想要什么,您可以通过添加隐藏字段或将额外字段放在“link_to”中以调用页面的形式进行操作。像 "link_to "simsforthisdirector", movies_similar_path(@movie), :director=>@director.name 见:http ://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#method-i-link_to 特别是示例将帮助您。
于 2012-08-17T11:30:39.523 回答
0

如果您使用的是 rails 3,那么您可以将路线声明为 -

get '/movies/similar(/:director)', :to => 'movies#similar'

在使用时,您可以将其用作 -

movies_similar_path

或者

movies_similar_path(@director.name)
于 2012-08-17T12:36:29.707 回答