1

作成した 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 スクリプトでそれを模倣したいと思います。

4

1 に答える 1

0

これが私が作業するためにまとめたものです...これが最善の方法であるかどうかはわかりませんが、database.yml を .gitignore し、重要な資格情報を github プロジェクトから除外することができます。

main.rb

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

config/initializers/initializer.rb

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

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

データベース.yml

adapter: sqlserver
username: XXXX
password: XXXX
host: "XXX.XXX.XXX.XXX"
port: 1433
database: "mydatabasename"
pool: 5
timeout: 15000
于 2016-05-31T12:34:30.693 に答える