Различные среды, включенные в Ruby on Rails

Может кто-нибудь объяснить мне, что такое среда Rails и что они делают? Я пытался исследовать себя, но ничего не смог найти. Из того, что я собираю, среда:

  • развитие
  • Продукция
  • Тестовое задание

3 ответа

Из того, что вы предоставили в своем вопросе, кажется, что вы спрашиваете:

"В чем разница между каждой конфигурацией среды в Rails?"

Rails поставляется с 3 типами окружения. У каждого есть свой сервер, база данных и конфигурация. Смотрите Rails Guides: Configuration для получения дополнительной информации о доступных вам опциях.

Настройка среды

Чтобы настроить среду Rails, вам нужно ввести в командной строке:

export RAILS_ENV=<env>

куда <env> может быть test, development, или же production, Установка этой переменной среды имеет решающее значение, так как она будет определять, какие гемы установлены или какие env затрагиваются при запуске rails console или же rails server,

В конфигурацию входит набор гемов, используемый для приложения. Когда ты бежишь rails new, вы найдете Gemfile с группами test, development, а также production, Эти группы соответствуют среде, установленной в настоящее время. Когда среда установлена ​​на один из них, работает bundle install устанавливает все драгоценные камни, связанные с этой группой (и драгоценные камни, не перечисленные в группе).

Включенные среды

test предназначен для запуска тестов / спецификаций. Эта база данных, скорее всего, будет голой, за исключением семян, которые вы можете вызвать перед запуском пакета. После того, как каждый тест завершен, база данных возвращается к своему состоянию до начала теста. Я не рекомендую запускать rails server, поскольку выполнение тестов (через MiniTest или RSpec) сделает это за вас и закроет сервер, как только набор будет завершен.

development позволяет вам "тестировать" ваше приложение с более крупной базой данных, обычно клоном производства. Это позволяет вам тестировать реальные реальные данные, не нарушая производство (версия, с которой столкнутся клиенты или конечные пользователи). Чтобы увидеть среду разработки в действии, измените RAILS_ENV и запустить rails server, Это хорошо для определения того, как вы хотите, чтобы ваши страницы выглядели (CSS, HTML). Хорошей практикой также является краткое "тестирование" своего приложения, когда вы проверяете, все ли выглядит хорошо и работает ли JavaScript.

productionзарезервировано для клиента и конечного пользователя. Конфигурация включает в себя фактический домен приложения, какие порты использовать, а также инициализаторы или задачи для запуска. Вы не хотите играть с вашей базой данных, так как это может повлиять на клиента. В идеале приложение должно работать как можно лучше, поскольку это считается вашим "конечным продуктом".

Каждое "окружение" - это просто конфиг. Вы можете запускать свое приложение в различных режимах, и эти режимы называются "средами", потому что они по-разному влияют на поведение приложения. В конечном счете, они просто конфиги.

Кстати, вы не могли выглядеть очень усердно, когда выглядело "везде", потому что я просто погуглил "окружение рельсов", и лучший результат был

http://guides.rubyonrails.org/configuring.html

что является официальным объяснением настройки среды рельсов.

Вот несколько хороших статей о Rails Environments

http://teotti.com/use-of-rails-environments/

а также

https://signalvnoise.com/posts/3535-beyond-the-default-rails-environments

удачи!!

Другие вопросы по тегам