为什么不MyModel.all.each {| m | m.destroy}按预期工作?

Jak*_*aba 1 ruby-on-rails

我想在我的railsapp中清除一个表,而不删除数据库并迁移...

 MyModel.all.each{|m| m.destroy} 
Run Code Online (Sandbox Code Playgroud)

我希望这段代码删除my_model表中的每一条记录,但这不会发生...使用Rails 2.3.4 + MySQL 5.1

编辑:问题是基于插件better_nested_set,它不允许我删除该顺序中的条目

MyModel.delete_all 另一方面工作,也许是因为它在数据库上执行截断(?)

Joh*_*ley 5

使用MyModel.destroy_all删除所有记录您的机型.

  • 这完全错了,semanticart!这是绕过回调的`delete_all`方法. (2认同)