【问题标题】:rake db:schema:dump doesn't provide data migration info - is there an automated way to get this?rake db:schema:dump 不提供数据迁移信息 - 是否有自动获取此信息的方法?
【发布时间】:2010-10-27 10:24:53
【问题描述】:
rake db:schema:dump

此命令为您提供旧数据库的架构,您可以从生成的架构为该数据库构建迁移。

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

也许我在做梦 - 认为 Rails 可以查看旧数据库中的数据并为您从现有数据构建迁移可能要求太多 - 像这样:

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

或者有什么办法吗?

【问题讨论】:

    标签: ruby-on-rails activerecord migration


    【解决方案1】:

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

    http://blog.leetsoft.com/2006/5/29/easy-migration-between-databases

    这可能会有所帮助。

    您可能还想查看 YamlDB 插件http://opensource.heroku.com/,它可以从一种数据库类型备份并恢复到另一种数据库类型。这里有一些instructions

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多