Ruby on rails rakedb:schema:dump不';t提供数据迁移信息-是否有一种自动化的方法来获取此信息?

Ruby on rails rakedb:schema:dump不';t提供数据迁移信息-是否有一种自动化的方法来获取此信息?,ruby-on-rails,activerecord,migration,Ruby On Rails,Activerecord,Migration,此命令为您提供遗留数据库的架构,您可以根据生成的架构为该数据库构建迁移 但是,如果数据库中有数据,如果有一个rake命令来检索Rails生成的迁移文件中的数据就更好了 也许我是在做梦——想想Rails可以查看遗留数据库中的数据并从现有数据为您构建一个迁移,这可能要求太多了——比如: rake db:schema:dump class LoadDefaultDatatest',:content=>test',:author\u id=>bopeep.id,:status=>ok') 结束 def

此命令为您提供遗留数据库的架构,您可以根据生成的架构为该数据库构建迁移

但是,如果数据库中有数据,如果有一个rake命令来检索Rails生成的迁移文件中的数据就更好了

也许我是在做梦——想想Rails可以查看遗留数据库中的数据并从现有数据为您构建一个迁移,这可能要求太多了——比如:

rake db:schema:dump
class LoadDefaultDatatest',:content=>test',:author\u id=>bopeep.id,:status=>ok')
结束
def自动关闭
结束
结束

还是有办法?

Tobias Lütke需要将数据库从一个体系结构迁移到另一个体系结构,但需要完整地跨多个体系结构复制数据。为了确保格式与架构无关,他创建了一个插件,将数据转储到YAML,然后在另一端重新加载到数据库中。这是一个简单的rake任务,Tobi给出了快速简单的指令

这可能会有所帮助

您可能还想看看YamlDB插件,它可以从一种db类型备份并恢复到另一种类型。这里有一些

class LoadDefaultData < ActiveRecord::Migration
  def self.up
    bopeep = User.find_by_username 'bopeep'
    BlogPost.create(:title => 'test', :content => 'test', :author_id => bopeep.id, :status => 'ok')
  end

  def self.down
  end
end