Это, кажется, популярный вопрос, так как я нашел много подобных вопросов на переполнение стека:Rails 4: Devise.secret_key не был установлен
- Devise Token Auth error: Devise.secret_key was not set
- Devise Secret Key was not set
- Mina and Devise.secret_key was not set
Однако, ничто из перечисленного не помогает устранить мою проблему.
Вот моя ситуация:
- Я установил шрифт Удивительной с
font-awesome-rails
камня, и он работал на местном уровне, но всякий раз, когда я разворачивал на Heroku, шрифт Высоких иконки больше не появляться. - Итак, я искал ответы, чтобы исправить эту проблему, и выяснил, что мне нужно запустить
RAILS_ENV=production bundle exec rake assets:precompile
, чтобы все сработало. - Однако, когда я запускаю эту команду, я получаю следующее сообщение об ошибке в терминале:
rake aborted! Devise.secret_key was not set. Please add the following to your Devise initializer: config.secret_key = '—— MY_SECRET_KEY_HERE ———' Please ensure you restarted your application after installing Devise or setting the key.
В соответствии с решениями, предлагаемыми в вопросах, упомянутых в начале моего вопроса, у меня есть config.secret_key = ENV['DEVISE_SECRET_KEY'] if Rails.env.production?
в devise.rb
Кроме того, as recommended here, я действительно запускал heroku config:set DEVISE_SECRET_KEY='—— MY_SECRET_KEY_HERE ———' -- app name_of_my_app_here
.
Потому что я не был уверен, я также побежал heroku config:set DEVISE_SECRET_KEY=—— MY_SECRET_KEY_HERE ——— -- app name_of_my_app_here
(без одинарных кавычек вокруг моего секретного ключа).
Но ни одна из этих вещей не работала.
Я продолжаю получать ту же ошибку.
Что я делаю неправильно?
Вы можете настроить 'heroku config -a app_name', чтобы узнать, какие переменные среды вы задали. Разработчик должен использовать secret_key_base вашего приложения по умолчанию в приложениях Rails 4. – dinjas
Спасибо за ваш ответ. У меня уже есть 'SECRET_KEY_BASE', когда я запускаю команду, которую вы рекомендуете.Оттуда, что мне делать, чтобы попытаться исправить мою проблему? –
Вы пытались перезапустить приложение? 'heroku restart -a app_name' – dinjas