【问题标题】:Does rake db:schema:dump recreate schema.rb from migrations or the database itself?rake db:schema:dump 是否从迁移或数据库本身重新创建 schema.rb?
【发布时间】:2011-04-18 10:39:48
【问题描述】:

rake db:schema:dump

从迁移或数据库本身重新创建schema.rb

【问题讨论】:

    标签: ruby-on-rails schema migration rake


    【解决方案1】:

    答案很简单:来自数据库。

    顺便说一句 - 当你 take a look into the source code of db:* tasks 时,你可以看到迁移任务在运行后调用 schema:dump

    desc "Migrate the database (options: VERSION=x, VERBOSE=false)."
    task :migrate => :environment do
      ActiveRecord::Migration.verbose = ENV["VERBOSE"] ? ENV["VERBOSE"] == "true" : true
      ActiveRecord::Migrator.migrate("db/migrate/", ENV["VERSION"] ? ENV["VERSION"].to_i : nil)
      Rake::Task["db:schema:dump"].invoke if ActiveRecord::Base.schema_format == :ruby
    end
    

    因此,迁移的工作方式是更改数据库并然后生成 schema.rb 文件。

    【讨论】:

      猜你喜欢
      • 2017-02-18
      • 2016-10-27
      • 2012-01-26
      • 2012-09-18
      • 1970-01-01
      • 1970-01-01
      • 2010-10-27
      • 1970-01-01
      • 2010-10-24
      相关资源
      最近更新 更多