我正在尝试为索引列表中的每个客户端设置一个按钮,该按钮会将您带到该客户的位置。
这是我的代码:
<% Client.active.find_each do |client| %>
<tr>
<td><strong><%= link_to client.client_name, client_path(client) %></strong></td>
<td><%= client.locname %></td>
<td><%= client.phone1 %></td>
<td><%= client.fax %></td>
<td><%= client.worequests.notcompl.count %></td>
<td><%= client.workorders.count %></td>
<td><%= client.contacts.count %></td>
<% location = Location.where('locname' == client.locname).first.id %>
<td><%= link_to 'Tree', location_url(location), :class => 'btn btn-mini btn-primary' %></td>
<% if current_user.has_role? :admin or current_user.has_role? :super %>
<td><%= link_to 'Edit', edit_client_path(client), :class => 'btn btn-mini btn-success' %></td>
<% else %>
<td></td>
<% end %>
</tr>
<% end %>
但是,链接始终是位置/ 13 - 来自第一个location.where查找。
为什么每个客户端的树按钮都不指向它们的位置?
感谢您的帮助!
答案 0 :(得分:0)
无论如何,你的where子句评估为true。我想你想要:
Location.where('locname=?', client.locname).first.id
答案 1 :(得分:0)
我认为这是你的问题:
Location.where('locname' == client.locname)
应该是
Location.where(:locname => client.locname)