用link_to传递url参数?

时间:2011-06-20 16:04:56

标签: ruby-on-rails

Rails 2.3.11

我没有在Rails UrlHelper API中看到任何关于此内容的内容,但我确信它是微不足道的(我还在学习Rails)。

我需要使用添加了参数的link_to生成一个URL:

http://.../posters/new?event_id=53而不是 http://.../posters/new

谢谢!

2 个答案:

答案 0 :(得分:4)

  

link_to('link text',new_poster_url(:event_id => event.id))

您还可以查看嵌套资源以获取替代URL映射。

答案 1 :(得分:3)

这取决于您是使用命名路由还是使用选项哈希,但两者都很简单。

<%= link_to @post.title, {:controller => 'posts', :action => "show", :some_param => "some params"} %>

如果你有来自map.resources的named_rotes或者你可以这样做的任何东西:

<%= link_to @post.title, post_path(:some_param => 'some param') %>

然后你可以在控制器中访问这些参数:

def show
   some_param = params[:some_params]
end