私は環境変数を格納するために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を使用することをお勧めします。それゆえ、私はこれを働かせようとしています。
ハズレを。まだ同じエラー。 – RawCode