“我有一个带有Postgresql数据库的Rails应用程序.我的数据库中包含1000条记录.
我编写了一个rake任务,它将操纵数据库中的记录.
如果rake任务出错,我想将更改恢复为数据库中的原始版本.
是否有机会在这种情况下测试数据库而不在开发环境中复制数据库?“
我编写了一个rake任务,它将操纵数据库中的记录.
如果rake任务出错,我想将更改恢复为数据库中的原始版本.
是否有机会在这种情况下测试数据库而不在开发环境中复制数据库?“
解决方法
在Rails本身具有功能沙箱
如果您希望在不更改任何数据的情况下测试一些代码,可以通过调用rails console –sandBox来实现.
bin/rails console --sandBox Loading development environment in sandBox Any modifications you make will be rolled back on exit irb(main):001:0>
您可以在此处粘贴ruby代码,并可以查看您想要查看的更改.关闭此控制台时,所有更改都将被还原(作为事务运行)
有关更多信息,请参阅此链接
http://edgeguides.rubyonrails.org/command_line.html#rails-console