我正在尝试在页面内显示动态链接列表,如下所示:
<% locations = get_locations() %>
<ul>
<% locations.each { |loc| %>
<li><%= link_to loc['name'], show_location_path(:id => loc['id']) %></li>
<% } %>
</ul>
此代码出现500服务器错误。
我通过以下方式验证了地址[&#39; id&#39;]和地址[&#39;名称&#39;]是否有效:
<ul>
<% locations.each { |loc| %>
<li><%= loc['name'] %></li>
<li><%= loc['id'] %></li>
<% } %>
</ul>
这不会导致500错误,并且列表正确显示。有任何想法吗?
在视图中:
并在控制器中:
PARAMS [:ID]
答案 0 :(得分:1)
假设您将路线定义为resources :locations
。
然后,要为显示操作创建链接,请使用以下命令:
<ul>
<% locations.each do |loc| %>
<li><%= link_to loc['name'], location_path(loc['id']) %></li>
<% end %>
</ul>
答案 1 :(得分:-2)
我不确定语法是否正确,
show_location_path(:id => loc['id'])
不应该吗?
show_location_path(loc['id'])