このコードは機能しますが、すべての繰り返しなしでこれを行うためのよりクリーンな方法があるように感じます:
def check_out_time
if super
super
elsif try(:registration).try(:program).try(:departure_time)
registration.program.departure_time
else
Settings.default_check_out_time
end
end
このモデルには という属性がcheck_out_time
あり、このコードは基本的に「チェックアウト時間が指定されていない場合は、登録のためにプログラムの出発時間を試してください。存在しない場合は、デフォルト設定を使用してください」と言っています。
これを書く良い方法はありますか?多分||
演算子を使用して?