エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
Railsのモデルの新規作成時のみにバリデーションを掛ける - setoya-blog
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
Railsのモデルの新規作成時のみにバリデーションを掛ける - setoya-blog
Railsのモデルの機能を使ったバリデーションは便利だが、すでにリリースしたサービスにバリデーションを... Railsのモデルの機能を使ったバリデーションは便利だが、すでにリリースしたサービスにバリデーションを追加する場合、既にあちこちにそのモデルの更新処理があったりして、そこで全てバリデーションに引っかかるのは困る、という場合がある。 そんなときは、対処療法的だが、更新時にはバリデーションを掛けずに、新規作成時のみにバリデーションをかければ良い。これには、:on => :createオプションを使う。 以下は、:hoge属性を必須で、半角英数字のみにし、しかも、新規作成時(create)のときだけの設定方法。これをモデルに記述しておく。 class Hoge < ActiveRecord::Base validates_presence_of hoge, :on => :create validates :hoge, :format => { :with => /\A[a-zA-Z]+\z/,