2016-03-16 255 views
0

在现实世界中,我们在数据库中有一堆重要数据。在像ROR这样的框架中,它可以通过一个命令(rake db:migrate VERSION=0)删除。是否有验证防止迁移回滚Ruby on Rails

"actually you mean to drop the whole database ? or you just did it unintentionally "

任何configfunction。在此警告后,

User may enter yes or no

。并且程序完成。 如果这样的功能/配置存在,那么请让我们知道,如果没有的话亲切地指导我们

+0

@Rob我更新了我的问题,它错误地写了它而不是耙 – ImranNaqvi

回答

1

有一个简单的解决方案 - 只是创造一个定义下的方法迁移如下

def down 
    raise IrreversibleMigration 
end 
+0

它应该在每个迁移中##我认为它会在最后一个权利? – ImranNaqvi

+0

并非每次迁移。如果这是一个新项目,而且我很担心这个问题,那么我会马上进行一次迁移,其中有一个空白的#up动作和#down动作。 – Rob

+0

没有这个问题,在哪里放置这个特定的迁移,我的意思是这是在中间,然后在耙db:migrate VERSION = 0它将删除所有的迁移,直到它到达特定的迁移(有配置) – ImranNaqvi