我知道有一种更优雅的方法可以做到这一点,但我无法弄清楚,我的大脑必须被困在“S”装备中。
<% @imageline.each do |album| %>
<%link_s = '/prepdownload?tag=gorilla'%>
<%=link_to (link_s) do %>
<%= image_tag src ='gorilla.jpg' %>
<%end%>
<%end%>
我有一个控制器操作prepdownload,我需要传递被点击的图像的ID。一旦我试图强行采取行动,其他方法就会对我产生影响。
{“tag”=&gt;“gorilla”,“controller”=&gt;“个人资料”,“行动”=&gt;“prepdownload”}我无法以比上述更优雅的方式对结果进行逆向工程。
答案 0 :(得分:0)
看起来你想要一个查询字符串。
您可以像这样写出一个手动URL哈希:
<%= link_to {controller: "profiles", action: "prepdownload", tag: "gorilla"} do %>
<%= image_tag src ='gorilla.jpg' %>
<% end %>
但优雅的方法是使用命名路线
# config/routes.rb
get 'prepdownload', to: 'profiles#prepdownload', as: :prepdownload
然后调用命名路由,传入查询字符串参数:
<%= link_to prepdownload_path(tag: "gorilla") do %>
<%= image_tag src ='gorilla.jpg' %>
<% end %>