在Rails中,有一个工作表。每个工作单都可以有儿童工作人员。我正在尝试创建兄弟工作者的下拉链接。我正在通过查看workorder.id = 30进行测试。它有一个sibling workorder.id = 20.我不想显示用户正在查看的相同工作订单的链接(30)。
所以我进行了测试<% if child.id != @workorder %>
。但是,30链接仍然显示。我添加了一些记录器代码,看看发生了什么。
这是我的代码:
<li class="dropdown-header">Siblings Links</li>
<% Workorder.find(@workorder).parent.children.each do |child| %>
<%= logger.info 'LOOK HERE ' %>
<%= logger.info child.id %>
<%= logger.info @workorder %>
<% if child.id != @workorder %>
<li><%= link_to child.id_desc, tasks_index4_path(:workorder_id => child) %></li>
<% end %>
<% end %>
日志显示:
LOOK HERE
30
30
LOOK HERE
30
20
然而,30的link_to显示出来。
感谢您的帮助!
答案 0 :(得分:1)
@workorder
可能是Workorder
个对象。因此,为了将@workorder
与child.id
进行比较,您需要访问id
上的@workorder
属性才能进行正确的比较:
<% if child.id != @workorder.id %>
答案 1 :(得分:1)
在比较中使用@workorder.to_i