[英]Getting Rid of Nil Class Error in Ruby
我目前有一張表,它分為4列:
<table id="customers">
<tr>
<th><em class='require'></em><%= Release.columns_hash['version'].human_name -%></th>
<th><em class='require'></em><%= Release.columns_hash['version'].human_name -%></th>
<th><em class='require'></em><%= Release.columns_hash['version'].human_name -%></th>
<th><em class='require'></em><%= Release.columns_hash['version'].human_name -%></th>
</tr>
<% @releases.in_groups_of(4).each do |releasesplit| %>
<tr>
<% releasesplit.each do |release| %>
<td align="center"><%= release.version %></td>
<% end %>
</tr>
<% end %>
但是問題是,每當我向表中添加不能被4整除的另一個條目時,都會出現錯誤: undefined method version' for nil:NilClass
任何想法如何解決這一問題? 謝謝,
似乎您在@releases
變量中的版本之一是nil
。
您可以執行以下操作: @releases.compact.in_groups_of(4).each do ...
Array#compact
返回刪除了nil
元素的原始數組的副本。
但是,我強烈建議您研究為什么其中一個首先為零的原因。
這不是分組的問題,因為分組是這樣工作的:
irb(main):002:0> [1,2,3].each_slice(2) {|group| puts group.inspect}
[1, 2]
[3]
=> nil
( in_groups_of
只是一個的ActiveSupport別名each_slice
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.