在脚本中创建数据库

时间:2011-11-24 11:47:33

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-3.1

在我的Rails应用程序开发中,我想编写一个脚本来在新数据库中创建新数据库(我正在使用MySQL),所以以后我可以运行脚本如下:

rails runner db/scripts/data_mover.rb

但是我不知道如何用ruby代码或Rails方式来做...任何人都可以提供一些提示或样本?

1 个答案:

答案 0 :(得分:2)

在类中编写代码,并将文件放在app/models下,例如`app / models / data_mover.rb'

class DataMover
  def self.run
    ActiveRecord::Base.connection.execute("CREATE DATABASE somedatabase")

    ActiveRecord::Base.establish_connection(
     :adapter  => "mysql",
     :host     => "localhost",
     :username => "myuser",
     :password => "mypass",
     :database => "somedatabase"
    )

    ActiveRecord::Base.connection.create_table :sometable do |t|
      #...
    end
  end
end

然后您可以运行rails runner 'DataMover.run'来创建数据库和表格。