如何使用schema.rb生成迁移文件

时间:2013-11-11 12:25:47

标签: ruby-on-rails activerecord rake

假设我有一个庞大而丑陋的schema.rb,并且没有迁移,除了使用ctr + c / crt + v执行此操作外,创建它们的最佳方法是什么。另外,我需要将它们视为已经全部迁移:)。考虑到这需要在rails 2.3.5中生成env :(。

2 个答案:

答案 0 :(得分:2)

生成迁移,然后将schema.rb代码(不包含ActiveRecord::Schema.define(:version => x) doend)复制到upchange方法中。

答案 1 :(得分:0)

您唯一的选择是使用命令rake db:schema:load从schema.rb文件生成数据库。请注意,rake db:schema:load将删除生产服务器上的数据。

如果查看schema.rb文件,您会注意到它只有上次迁移的时间戳,即模式的版本,以及复制它所需的命令。您可以从中创建单个迁移,并从那里进行所有未来的更改。