Отсутствует secret_key_base в Rails.application.secrets в тестовой среде - PullRequest
0 голосов
/ 07 сентября 2018

Я сгенерировал простое приложение rails api и у меня проблема с Rails.application.secrets.secret_key_base - это nil.Я запускаю его на своей локальной машине.Согласно этой статье все должно быть хорошо.У меня есть правильный app/config/credentials.yml.enc.Когда я пытаюсь отредактировать его с помощью rails credentials:edit, оно редактируется правильно.Фактическое содержание -

# Used as the base secret for all MessageVerifiers in Rails, including the one protecting cookies.
secret_key_base: 47ba27802a354b44c1cd0d0c624fcde2dced69ccfe62d274e9ecfc98d9e6671c4cf31a29aaf77af555d9553811a3ff15f22ab060e5ec5ffc0d29f77241368272

Во всех конфигурационных файлах (/app/config/environments/*.rb) я добавил config.require_master_key = true - это не помогает.Мой фактический Rails.application.secrets контент - {:secret_key_base=>nil, :secret_token=>nil}.Я выбросил его в свой пользовательский класс и application_controller.rb - этот же результат в обоих местах.

Есть идеи, что я пропустил?

PS.Прежде чем пометить этот вопрос дубликатом - обратите внимание, что я использую рельсы 5.2, где изменилось хранение учетных данных.

Ответы [ 2 ]

0 голосов
/ 07 сентября 2018

Попробуйте

Rails.application.credentials.secret_key_base 

secret_base_key отличается от credentials Когда вы добавляете secret_base_key к учетным данным, он просто доступен как учетные данные, а не как секретные.

0 голосов
/ 07 сентября 2018

У меня была такая же проблема, и в конце я обнаружил, что rails credentials:edit на самом деле не сохранялся из-за редактора (я использовал код VS). Когда я попробовал это с vim, он сохранил и все заработало как надо. Поэтому попробуйте настроить редактор на vim при запуске команды следующим образом:

EDITOR=vi bin/rails credentials:edit

Затем сохраните с помощью :wq и попробуйте снова.

Надеюсь, это решит проблему:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...