2017-06-14 19 views
2

私は環境変数を格納するためにdotenvを使用していますが、gemfileにインクルードしてからherokuにプッシュできません。私は次のエラーを取得しています: -NameError:初期化されていない定数です。hellokuにrailsアプリケーションをプッシュしているときにDotenv

remote: -----> Installing node-v6.10.0-linux-x64 
remote: -----> Detecting rake tasks 
remote: sh: 2: Syntax error: Unterminated quoted string 
remote: sh: 2: Syntax error: Unterminated quoted string 
remote: ! 
remote: !  Could not detect rake tasks 
remote: !  ensure you can run `$ bundle exec rake -P` against your app 
remote: !  and using the production group of your Gemfile. 
remote: !  rake aborted! 
remote: !  NameError: uninitialized constant Dotenv 
remote: !  /tmp/build_5437bc300afb80cfa46b1111bb960f46/config/application.rb:17:in `<top (required)>' 
remote: !  /tmp/build_5437bc300afb80cfa46b1111bb960f46/Rakefile:4:in `require_relative' 
remote: !  /tmp/build_5437bc300afb80cfa46b1111bb960f46/Rakefile:4:in `<top (required)>' 

これは私が私のgemfileでdotenv含むてる方法です: -

gem 'dotenv-rails', :require => 'dotenv/rails-now' 

を私もapplication.rbファイルに以下を追加しようとしています -

Bundler.require(*Rails.groups) 

Dotenv::Railtie.load 

HOSTNAME = ENV['HOSTNAME'] 

まだ動作しません。

「引用符で囲まれていない文字列」と言われる2行が、関連のない問題でdotenvが読み込まれないことがあるかどうかはわかりません。私はそれを見つめ、herokuの設定をチェックして、変数に何らかの不具合があるかどうかを確認しましたが、すべてうまく見えます。私はgemfileにdotenvを追加する前にプッシュすることができました。

私は、バンドルがインストールを実行するサーバーを再起動し、gemfile.lockを削除し、バンドルがインストールを実行しようと、私はここに、この問題を見て、まだ運Can't push to Heroku because of DOTENV uninitialized constant error

で提案されている解決策を試していません。

PS - 私はrecaptchaを実装しようとしていますが、env varsとしてrecaptchaのsite_keyとsecret_keyを格納するためにdotenvを使用することをお勧めします。それゆえ、私はこれを働かせようとしています。

答えて

0

生産グループに宝石を追加してみてください。

group :production do 
    gem 'dotenv-rails' 
end 
+1

ハズレを。まだ同じエラー。 – RawCode

0

私は同じ問題に直面し、次のように解決できました。

1)は、特定の環境のためにGemfiledotenv-railsを追加します。

# Gemfile 
group :development, :test do 
    gem 'dotenv-rails' 
end 

2)と環境があなたのGemfileグループ一致した場合にのみDotenvのものを実行します。

# config/application.rb 
Bundler.require(*Rails.groups) 
if ['development', 'test'].include? ENV['RAILS_ENV'] 
    Dotenv::Railtie.load 
end 
+0

同じエラー –

関連する問題