如何使用database.yml文件将我的Ruby脚本连接到我的数据库?

时间:2016-05-31 11:22:27

标签: sql-server ruby database tiny-tds

我想将我的数据库用于我创建的ruby脚本。现在我正在将数据库连接器写入我创建的模型文件中......就这样......

class MyModel < ActiveRecord::Base
  self.abstract_class = true
  self.table_name_prefix = "MyDatabase."

  establish_connection(
    :adapter => "sqlserver",
    :host => "XXXX",
    :port => "14XX",
    :database => "XXXX",
    :username => "XXXX",
    :password => "XXXX"
  )

end

但是因为我正在尝试将我的项目签入Github,所以我想将凭据和连接信息提取到database.yml文件中,我可以将其添加到.gitignore。我从来没有真正研究过如何使用Rails项目,但是想为这个Ruby脚本模仿它。

1 个答案:

答案 0 :(得分:0)

所以这就是我拼凑起来的工作......不确定这是最好的方法,但它允许我.gitignore database.yml并保留重要的凭据,而不是我的github项目。

<强> main.rb的

require 'active_record'
require 'tiny_tds'
require './config/initializers/initializer.rb'

<强>配置/初始化/ initializer.rb

@dbconfig = YAML.load(File.read("./config/database.yml"))
ActiveRecord::Base.establish_connection(@dbconfig)

Dir["./models/*.rb"].each { |file| require file }

<强>的database.yml

adapter: sqlserver
username: XXXX
password: XXXX
host: "XXX.XXX.XXX.XXX"
port: 1433
database: "mydatabasename"
pool: 5
timeout: 15000