我正在尝试在我的桌面上放置link_to
以转到show
操作,但它将网址设为/admin/vulnerabilities.object_id
而不是/admin/vulnerabilities/object_id
我的索引视图是:
...
<% @vulnerabilities.each do |vulnerability| %>
<tr>
<td><%=link_to vulnerability.id, admin_vulnerabilities_path(vulnerability) %></td>
<td><%= vulnerability.type %></td>
<td><%=h truncate(vulnerability.description, :length => 80) %></td>
<td><%= vulnerability.published %></td>
<td><%= vulnerability.modified %></td>
<td><%= link_to vulnerability.href, vulnerability.href , target: :_blank %></td>
</tr>
<% end %>
...
我有show.html.erb
模板设置,我的show
操作如下:
def show
@vulnerabilities = Vulnerability.find(params[:id])
end
从我所看到的情况来看,这应该可行,但是当点击链接时,它只会重定向到索引页面,有效地刷新它,而不是完全不使用我的显示页面。
答案 0 :(得分:2)
如果您将routes.rb文件的相关部分添加到您的问题中会很有帮助,但我推测问题是admin_vulnerabilities_path(vulnerability)
应该是admin_vulnerability_path(vulnerability)
。
此外,正如评论中所述,最好使用@vulnerability
作为您的实例名称,因为find
将返回单个记录。