我正在使用 ruby?? 2.5.5,我正在像這樣啟動服務器:
RAILS_MASTER_KEY=[MY_KEY] RAILS_ENV=staging MY_DATABASE_PASSWORD=[MY_PW] bin/rails server -b 0.0.0.0
行得通,現在我想像這樣生成遷移:
RAILS_MASTER_KEY=[MY_KEY] RAILS_ENV=staging MY_DATABASE_PASSWORD=[MY_PW] bin/rails generate migration CreateJoinTableMyTable column1 foreignKey
我收到以下錯誤:
/path/to/.rvm/gems/ruby-2.5.5/gems/activesupport-5.2.3/lib/active_support/encrypted_file.rb:96:in `handle_missing_key': Missing encryption key to decrypt file with. Ask your team for your master key and write it to /Users/BaxterStockman/empiric/hyperion-backend-webapp/config/master.key or put it in the ENV['RAILS_MASTER_KEY']. (ActiveSupport::EncryptedFile::MissingKeyError)
我還RAILS_MASTER_KEY寫入~/.bashrc并重新加載組態檔,但沒有做任何事情。
任何人都知道為什么會拋出這個錯誤?
uj5u.com熱心網友回復:
什么是rails版本?它向您顯示錯誤,您應該在應用程式檔案夾中有一個檔案config/master.key。需要解密credentials.yml.enc。
只需通過詢問您的同事來添加該檔案,或者如果您沒有,請通過生成
EDITOR="code --wait" rails credentials:edit
您可能會使用 EDITOR= 而不是您會使用的代碼,因為我不知道這一點。只要確保編輯器不會立即關閉,這就是為什么對于 VSCode 我必須使用 --wait 引數。
之后,您可以將 RAILS_MASTER_KEY 放在credentials.yml.enc 中。
由于出現了 Rails 5.2 憑證檔案,因此您不需要將密鑰存盤在作業系統的 ENV 變數中。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/390027.html
