今日コードレビューをしてて気づいたやつ。*1 # コメントが全てお気に入り1件以上あるかどうか comment_all_favorite = article.article_comments.all? { |article_comment| article_comment.favorite_count >= 1 } if comment_all_favorite # 何か処理 end パッと見て変哲もないコードなんですが、実は article_comments が0件の時にも上記if文の中が評価されます サンプルコード(Ruby 2.3.0で確認) irb(main):001:0> [].all?{ false } => true 空の時に all? がtrueを返すのは知らないとハマりどころかと。 instance method Enumerable#all? (Ruby 2.3.0)