やりたいこと

hour:1 minute:2 second:3 とデータがある場合 → viewで1時間2分3秒と表示したい

分岐条件

hourはnilの可能性があるので、hourがnilの場合は時間は表示させない。
minute,secondは値が入っている。

質問

普通にifで条件分岐させるやり方しか思いつかないのですが、メソッドなどでスッキリ実装させる方法はないでしょうか。

コード

  unless result.run_hour.nil?
    hour = result.run_hour.to_s + "時間"
  else
    hour = ""
  end

  unless result.run_minute.nil?
    minute = result.run_minute.to_s + "分"
  else
    minute = ""
  end

  unless result.run_second.nil?
    second = result.run_second.to_s + "秒"
  else
    second = ""
  end

  hour + minute + second