今日は改めてデータの持ち方について考えさせられたロジックがありました。 仕様としては ある期限が現在より過去日であった場合、文言を非表示にする。 それ以外であれば文言を表示するという単純ものです。 その仕様に対し、私は最初、こんなロジックを書きました。 <% if @g08m11.present? && (@g08m11.end_date.blank? || @g08m11.end_date >= DateTime.now.to_date) %> g08m11を表示してください。 <% end %>このロジックの何が問題かというと、 「コードの読まれ方を意識していない。」という問題です。 このコードだとend_dateがnullであった場合、 「@g08m11.end_date >= DateTime.now.to_date」 も読まれてしまい、エラーとなります。 その為、以下の内容に修正