我现在尝试了不同的模型,我总能得到相同的结果。
model Foo
include MongoMapper::Document
key :title, String
attr_accessible :title
state_machine :state, :initial => :new do
state :new
state :faa
event :faa do
transition :new => :faa
end
end
end
在rails console中:
bar = Foo.new
bar.state
=> "new"
bar.title = "something"
=> "something"
bar.valid?
=> true
bar.destroy
=> nil
bar.foo
bar.state
=> "faa"
bar.destroy
=> true
任何想法,为什么我无法删除数据库中的对象?我尝试了日志,但不幸的是它是空的。
答案 0 :(得分:1)
您的州不应该被命名为new
,因为它是一个保留的Ruby词。将此状态更改为initial
,它应该会有所帮助。