Я работаю с большим приложением Rails, и мне было поручено отключить rake-задачи, которые могут быть вредными при запуске в наших производственных средах, таких как db: migrate, reset и т. Д. Однако я не уверенКакой лучший способ действий здесь?
Пока что мое решение состоит в том, чтобы поместить подобное утверждение в верхнюю часть задачи database.rake
if ENV['RAILS_ENV'] == 'development' || ENV['RAILS_ENV'] == 'test'
Теперь, очевидно, это отключает всезадачи по сбору базы данных для всех сред, кроме разработки и тестирования.Тем не менее, я чувствую, что это хак, и мне это не нравится.Может кто-нибудь придумать лучший способ решения этой проблемы, или это решение создает какие-то большие проблемы, которые я, возможно, не понимаю?
РЕДАКТИРОВАТЬ: побочный вопрос к проблеме, с которой я столкнулся.Когда я установил свой RAILS_ENV на «производство» через
export RAILS_ENV=production
, это работало нормально, однако мне нужно было вернуть мою среду в среду по умолчанию.Когда я пытаюсь
export RAILS_ENV=
, я получаю сообщение об ошибке
No such file or directory - project_path/config/environments/.rb
Кто-нибудь знает, как восстановить среду по умолчанию?