如何检查关联是否存在并显示关联记录而不是实际记录。

时间:2015-08-27 18:53:22

标签: ruby-on-rails syntax

我正在尝试让系统检查是否有客户类别,如果有,则显示客户类别,如果没有显示内部类别。我尝试过像

这样的事情
<% if c.customer_labor_category != 'nil' %>

我也在上面尝试了以下显示“l”

的地方
<% if c.customer_labor_category.any? %>

我基本上需要它来检查是否有客户类别,如果有,请使用该字段而不是内部字段。

<% c = lh.pluck('categories.category').uniq %>
   <% if c.length == 0 %>
      <tr>
         <td class="tg-multirow" rowspan="1">Category</td>
         <td class="tg-datacell"></td>
         <td class="tg-celltitle" rowspan="1">Effort</td>
         <td class="tg-datacell"></td>
      </tr>
   <% else %>
      <% c.each do |l| %>
        <tr>
           <% if l == c.first %>
             <td class="tg-celltitle" rowspan="<%= lc.length %>">Labor Category</td>
           <% end %>
             <td class="tg-datacell"> <%= l %> </td>
             <% if l == c.first %>
                <td class="tg-celltitle" rowspan="<%= c.length %>">effort</td>
             <% end %>
            <% hours = lh.joins(:category).where(:categories => { :category => l }).each.sum(&:hours) %>
              <td class="tg-datacell"> <%= hours %></td> 
         </tr>
      <% end %>
  <% end %>

1 个答案:

答案 0 :(得分:0)

c.customer_labor_category.nil? # true if nil
c.customer_labor_category.present? # true if not nil