Railsを使わずにRubyファイルでActiveRecordを使ってデータベースと接続したいです。そして、機密情報はdotenvを使って隠したいです。
しかし、下記のようにコードを書くと、下記のエラーが表示されます。
Unknown MySQL server host 'ENV['DB_HOST']' (2) (Mysql2::Error::ConnectionError)
一応公式は読んでみたのですが、解決策が分かりません。どこに問題があるのでしょうか。ちなみに、環境変数を使わずに直接database.ymlに書き込んだ場合はうまく行きます。
.env
DB_HOST = xxx DB_NAME = xxx DB_PASSWORD = xxx DB_USER = xxx
database.yml
db: adapter: mysql2 host: ENV['DB_HOST'] username: ENV['DB_USER'] password: ENV['DB_PASSWORD']
active_record.rb
ruby
1require "dotenv" 2require "mysql2" 3require "active_record" 4 5Dotenv.load 6config = YAML.load_file( './database.yml' ) 7 8ActiveRecord::Base.establish_connection(config["db"])
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/10/06 04:19