我正在学习Rails,并开始学习数据库迁移。我创建了两个迁移,都成功地迁移了上去。但是,当我尝试迁移回去时,最新的迁移(第一个运行的)由于我的代码中有一个拼写错误而失败了。我修复了这个错误,但迁移在此之后仍然无法成功。我发现原因是迁移向下进行到一半时中止了,然后当我再次尝试迁移回去时,它失败了,因为一些更改已经完成,所以列名不同等其他问题。最终,我通过调整“schema_migrations”表并手动将其回滚到先前版本,然后从那里进行上下迁移来解决了这个问题。
我的问题是,是否有一种方法告诉Rails以事务模式运行迁移,如果代码失败,则不要提交事务?
我的问题是,是否有一种方法告诉Rails以事务模式运行迁移,如果代码失败,则不要提交事务?