実現したいこと
ここに実現したいことを箇条書きで書いてください。
- nilの場合は「~~」といった書き方にすると空欄でもエラーが出ないでバリデーションかけられるようにしたい
前提
Ruby on Railsで民泊アプリを作成しています。
チェックイン・チェックアウト・宿泊人数を空入力してsubmitすると、以下のようなエラーメッセージになってしまいます。
発生している問題・エラーメッセージ
nil can't be coerced into Integer
該当のソースコード
ruby
1def sum_of_days 2 unless start_date.nil? && end_date.nil? 3 sum_of_days = (end_date.to_date - start_date.to_date).to_i 4 else 5 sum_of_days = 0 6 end 7 end 8 9 def sum_of_price 10 unless total_people.nil? && sum_of_days.nil? 11 (room.fee * total_people * sum_of_days).to_i 12 else 13 sum_of_price = 0 14 end 15 end
試したこと
自分なりに、nilの場合でも、エラーが出ないでバリデーションかけられるようにif構文を書いてみたのですが、まだ駄目みたいです。
この場合は私の書き方が間違っているのでしょうか?
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
ブランチ名:develop
GitHub

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2023/05/04 07:53
2023/05/04 07:54