假设我有一个庞大而丑陋的schema.rb,并且没有迁移,除了使用ctr + c / crt + v执行此操作外,创建它们的最佳方法是什么。另外,我需要将它们视为已经全部迁移:)。考虑到这需要在rails 2.3.5中生成env :(。
答案 0 :(得分:2)
生成迁移,然后将schema.rb代码(不包含ActiveRecord::Schema.define(:version => x) do
和end
)复制到up
或change
方法中。
答案 1 :(得分:0)
您唯一的选择是使用命令rake db:schema:load
从schema.rb文件生成数据库。请注意,rake db:schema:load
将删除生产服务器上的数据。
如果查看schema.rb文件,您会注意到它只有上次迁移的时间戳,即模式的版本,以及复制它所需的命令。您可以从中创建单个迁移,并从那里进行所有未来的更改。