Ruby on rails 重写迁移和数据库:重置 我为一个电话号码创建了一个整数,然后得知由于它的大小,最好把它当作一个字符串。 然后我决定直接更改迁移并应用db:reset,而不是添加新的迁移,因为此时项目仅在我的计算机上。Db:重置成功了,但我的数据库似乎没有改变

Ruby on rails 重写迁移和数据库:重置 我为一个电话号码创建了一个整数,然后得知由于它的大小,最好把它当作一个字符串。 然后我决定直接更改迁移并应用db:reset,而不是添加新的迁移,因为此时项目仅在我的计算机上。Db:重置成功了,但我的数据库似乎没有改变,ruby-on-rails,migration,reset,Ruby On Rails,Migration,Reset,它提出了许多问题: 是否有分析数据库并确定其列类型的命令 db:reset是否允许修改迁移,比如回滚迁移之后 尽管不可取,但直接修改迁移的条件是什么?任务通过删除数据库然后加载schema.rb来重置数据库-db:reset任务不会再次运行迁移。如果您删除了数据库,然后创建了数据库并运行了db:migrate,那么您应该会得到所需的结果在migration中将字段更改为字符串,然后运行以下命令:- rake db:drop rake db:create rake db:migrate 它会将字

它提出了许多问题:

是否有分析数据库并确定其列类型的命令

db:reset是否允许修改迁移,比如回滚迁移之后


尽管不可取,但直接修改迁移的条件是什么?

任务通过删除数据库然后加载schema.rb来重置数据库-
db:reset
任务不会再次运行迁移。如果您删除了数据库,然后创建了数据库并运行了
db:migrate
,那么您应该会得到所需的结果

在migration中将字段更改为字符串,然后运行以下命令:-

rake db:drop
rake db:create
rake db:migrate

它会将字段类型从整数更改为字符串。

要修改迁移
db:rollback
将起作用。非常感谢您的回答。这真的帮助我继续前进并清理了一些迁移。非常感谢您对这些命令的解释。这对我也有帮助。