如何在Ruby on Rails应用程序中删除数据库表中的所有记录?
发布于 2011-03-16 15:47:08
如果你正在寻找一种不需要SQL的方法,你应该能够使用delete_all。
Post.delete_all
或者有一个标准
Post.delete_all "person_id = 5 AND (category = 'Something' OR category = 'Else')"
有关详细信息,请参阅here。
记录在没有加载的情况下被删除,这使得它非常快,但会破坏计数器缓存等依赖于删除时要执行的rails代码的功能。
发布于 2011-03-16 16:11:55
通过SQL删除
Item.delete_all # accepts optional conditions
通过调用每个模型的destroy方法来删除(开销很大,但确保调用回调)
Item.destroy_all # accepts optional conditions
所有here
发布于 2011-03-16 16:09:42
如果您想要完全清空数据库,而不仅仅是删除附加到数据库的一个或多个模型,您可以这样做:
rake db:purge
您也可以在测试数据库上执行此操作
rake db:test:purge
https://stackoverflow.com/questions/5322298
复制相似问题