presenceがtrueかfalseか知る方法
モデルのバリデーションで
class Hoge < ActiveRecord::Base
validates :foo, presence: true
end
となっていた場合、必須項目であることをフォームに表示させたいと思っています。
メタプログラミング的にモデルにpresence
がtrue
かfalse
問い合わせる方法はありませんか?
追記
考慮漏れしていたのですが
validates :foo, presence: true, if: -> { false }
とifを使ったパターンが抜けてしまっていました。できればこれにも対応したいです。
(ifオプションがtrueかfalseか知る方法がわかればいけそうな気が...)
いけました。
.options[:if]
にProcが入っているので、
.options[:if].call
でifオプションの結果が取得できました。
だたしやはり、
if: :admin?
のパターンはシンボルが入っているので.call
できないですね...