7

私がやっていたstate_machineで

state :cancelled do
  validates_presence_of :user
end

ユーザーが存在しない場合、移行は自動的にキャンセルされます。

aasmの特定の状態に同様の検証を追加するにはどうすればよいですか?

4

2 に答える 2

7

2 つのオプションを提供できます。

最初:

validates_presence_of :sex, :name, :surname, if: -> { state == 'personal' }

二番目

event :fill_personal do
  before do
    instance_eval do
      validates_presence_of :sex, :name, :surname
    end
  end
  transitions from: :empty, to: :personal
end
于 2016-03-26T19:01:53.183 に答える