Rails не находит переменные окружения? - PullRequest
0 голосов
/ 05 октября 2018

Когда я запускаю bundle exec rails c, чтобы запустить консоль rails, я получаю сообщение об ошибке:

    erb):16:in `fetch': Cannot load 
   `Rails.application.database_configuration`:
    key not found: "DBUSER"
    Did you mean?  "USER" (KeyError)

ОДНАКО у меня установлен этот ключ:

printenv | grep DBUSER
DBUSER=dbuser

почемуРазве рельсы не видят этот ключ?

1 Ответ

0 голосов
/ 05 октября 2018

Если вы не хотите настраивать локальные переменные окружения, я рекомендую использовать какой-нибудь гем, который может с этим справиться.Преимущество этого метода в том, что вы можете легко отслеживать переменные, которые используются в вашем приложении Rails.Также из Dotenv Docs:

Не всегда практично устанавливать переменные среды на машинах разработки или серверах непрерывной интеграции, где выполняется несколько проектов.

Вы можете использовать Dotenv или Figaro (хотя этот последний, похоже, больше не поддерживается).В основном используется следующее:

  1. Установите файл .env в каталоге /app
  2. Запишите имена переменных, которые будут использоваться в вашем коде или файлах конфигурации: DBUSER=somekey
  3. Обязательно следуйте инструкциям по загрузке, приведенным в ознакомительном файле GitHub для этих самоцветов.
  4. Запустите приложение Rails и убедитесь, что переменные среды работают.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...