我正在使用rubyist-aasm状态机来处理我的 Event 对象中的不同状态(事件初始化、事件讨论、事件发布等)。我添加了守卫以防止在不满足某些条件时更改状态。
这一切都很好,但是当警卫拒绝状态更改时,它不会显示任何错误。知道我怎么能看到状态没有改变吗?我可以手动检查状态,但这听起来像一个丑陋的解决方案。
aasm_state :firststate
aasm_state :secondstate
aasm_event :approve do
transitions :to => :secondstate, :from => [:firststate], :guard => :has_a_price?
end
def has_a_price?
self.price.present?
end