Rails アプリケーションで自分のレコードを並べ替えたい:
@ebms = Ebm.all
@ebms.sort_by! {|u| u.number}
はu.number整数として定義されています! 問題は、Rails が以下と比較できないことnilです:
comparison of NilClass with 32400 failed
このエラーを回避するにはどうすればよいですか?
Rails アプリケーションで自分のレコードを並べ替えたい:
@ebms = Ebm.all
@ebms.sort_by! {|u| u.number}
はu.number整数として定義されています! 問題は、Rails が以下と比較できないことnilです:
comparison of NilClass with 32400 failed
このエラーを回避するにはどうすればよいですか?
numbernilの場合に使用される比較のデフォルト値を追加できます。
@ebms = Ebm.all
@ebms.sort_by! {|u| u.number || 0}
または、この回答の提案に従って、番号のあるものを選択して並べ替え、番号のないものをリストに追加することもできます。