4

我想要去我的本地和我不斷收到以下錯誤在我的瀏覽器:RubyonRails-您必須在應用程序的配置設置config.secret_key_base

You must set config.secret_key_base in your app's config 

我已經看了看周圍,人們說你必須耙機密鑰,然後將其放入config/initializers/secret_token.rb,但我的文件夾中沒有secret_token.rb文件。我運行紅寶石版本ruby 2.1.2p9和軌道版本的Rails 4.0.8我在railstutorial.org以下教程如果在2.2

+0

你運行了嗎你的控制檯中有'rake secret'嗎? – spickermann 2014-08-28 02:55:06

+0

[DEPRECATION WARNING:您沒有設置config.secret \ _key \ _base](http://stackoverflow.com/questions/22268669/deprecation-warning-you-didnt-set-config-secret-key-基地) – 2014-08-28 05:19:09

回答

15

運行rake secret有助於產生一個新的令牌。

現在創建一個新的文件config/initializers/secret_token.rb並添加以下內容:

MyApp::Application.config.secret_key_base = '<token>' 

替換<token>與您剛生成的一個,並與您的應用程序的實際模塊名稱替換MyApp。您可以在config/environments/development.rb

+0

謝謝!有效!!!! – 2014-08-28 03:09:52

+0

該應用的名稱不在提及的文件中。我還能找到什麼? Thx – Andy 2015-08-24 13:26:52

+1

在較新版本的Rails中,您可以使用'Rails.application.config.secret_key_base' – infused 2015-08-24 21:28:25

0

Rails的5

在軌-5的頂部找到您的應用程序的模塊名稱,創建config/initializers/secret_token.rb

添加Rails.application.config.secret_key_base= 'secret_token'

其中'secret_token' = rake:secret

重新啓動服務器

相關問題