必ずチェックを行いたいとは限らないので、validate条件を設定したりするときに、
その比較条件に変数を使いたかったので調べました。
まずは普通のvalidate
validates :shop_id, presence: true
validate条件を使ったとき
validates :shop_id, presence: true, if: "shop_flg == '1'"
マジックナンバー使うのは嫌なので変数(定数)に置き換えてみる
SHOP_FLG = '1' validates :shop_id, presence: true, if: "shop_flg == #{SHOP_FLG}"
判定を文字列にするので、普通に#{}で変数を囲めば実現できるようです。
参考URL
http://www.techscore.com/tech/Ruby/Rails/model/validation/4
0 件のコメント:
コメントを投稿