![](https://cdn-ak-scissors.b.st-hatena.com/image/square/2d378ef3913caa4a25e5fd5abbb64c752f90d42b/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9cmFpbHMlRTMlODElQTclRTMlODIlQUIlRTMlODMlQUMlRTMlODMlQjMlRTMlODMlODAlRTMlODMlQkMlRTQlQjglOEElRTMlODElQUIlRTclODQlQTElRTMlODElODQlRTYlOTclQTUlRTQlQkIlOTglRTMlODElQUUlRTMlODMlOTAlRTMlODMlQUElRTMlODMlODclRTMlODMlQkMlRTMlODIlQjclRTMlODMlQTclRTMlODMlQjMlRTMlODIlOTIlRTglQTElOEMlRTMlODElODYlRTYlOTklODIlRTMlODElQUUlRTYlQjMlQTglRTYlODQlOEYlRTclODIlQjkmdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT01NiZ0eHQtY2xpcD1lbGxpcHNpcyZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPWY2ODg5MDk0ZGIzODMzMWI0MzVmZGU3MWQ3MDE0Mjc3%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwbWFzYWsxeXUmdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT0zNiZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPTBmNjFiMjY4NWI5Y2Q0NGI1MzYyNjFkZmI3YTcwNjE5%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3D74cb48f46e8e1dceb706c0a3e85f121a)
エントリーの編集
![loading...](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/common/loading@2x.gif)
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
railsでカレンダー上に無い日付のバリデーションを行う時の注意点 - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
![アプリのスクリーンショット](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/entry/app-screenshot.png)
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
railsでカレンダー上に無い日付のバリデーションを行う時の注意点 - Qiita
date型の値の日付チェックで、1930/2/30のような不正な日付を除外する方法を記載する。 発生した問題 f.... date型の値の日付チェックで、1930/2/30のような不正な日付を除外する方法を記載する。 発生した問題 f.date_selectのようなプルダウン形式の場合、そのままではmodel層でのバリデーションが行えない。 理由 view層でf.date_selectのプルダウンによって年月日をそれぞれ取得する方法だと、年月日のデータがパラメータから渡ってくる場合、パラメータはparams[:hoge]["date(1i)"]、params[:hoge]["date(2i)"]、params[:hoge]["date(3i)"]に分割して格納される。 このparams[:hoge]をモデルに格納(具体的にはFuga.new(params))するタイミングで、1930年2月30日のような不正なデータに補正が自動でかかり、1930年3月2日とされてしまう。補正後のデータはデータ的には妥当なためバ