为link_to添加额外选项

时间:2015-02-11 18:42:05

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

我想用这个link_to帮助器传递一个参数。我该怎么做?

<%= link_to ('/my_controller/my_action') do %>
    <div>haha</div>
<% end %>

我使用标准文字链接的原始代码:

<%= link_to("link text", {:controller => 'my_controller', :action => 'my_action', :id => my_id}) %>

2 个答案:

答案 0 :(得分:2)

就像你的第二个例子一样:

<%= link_to({:controller => 'my_controller', :action => 'my_action', :id => my_id}) do %>
   My text goes here
<% end %>

如果你有一个路径助手(即如果它是PostsController&#39; s show行动)那么你可以这样做:

<%= link_to post_path(my_id) do %>
  My text goes here
<% end %>

答案 1 :(得分:0)

根据我的理解,您希望在使用块时将选项传递给link_to助手。

来自http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#method-i-link_to

的文档

可以使用以下格式

link_to(options = {}, html_options = {}) do
  # name
end

为您举例并使用您提供的代码:

<%= link_to({:controller => 'my_controller', :action => 'my_action', :id => my_id}) do %>
    <div>haha</div>
<% end %>