application_controller.rb
ApplicationController является родительским классом для всех контроллеров. По этой причине объявленные в нем методы будут доступны всем контроллерам.
ApplicationController - это удобное место для фильтров, которые вы хотите применить ко всем контроллерам в вашем приложении, или методов, которые вы хотите сделать доступными для всех из них.
конфигурации / среда / *. RB
Файлы в config / средах / *. Rb переопределяют настройки в файле config / enviornment.rb по умолчанию в зависимости от среды, в которой работает ваш сервер (разработка / производство). Одним из примеров является то, что при разработке ошибки выводятся на экран, а при производстве возвращается страница с общей ошибкой. Этот параметр находится в config / environment / development.rb
boot.rb
boot.rb используется как часть процесса инициализации rails. Обычно вам это не нужно, и, скорее всего, не стоит к этому прикасаться.
environment.rb
environment.rb - это общий файл конфигурации для вашего приложения.
routes.rb
rout.rb используется для определения того, как ваше приложение обрабатывает запросы к определенным URL-адресам. Например, вы можете захотеть, чтобы все 404 запроса переходили к определенному действию, а не обрабатывались обработчиком ошибок по умолчанию:
map.connect '*path', :controller => 'home', :action => 'on_404'
Это также важная часть реализации RESTful приложения.
Где разместить код инициализации и конфигурации
И код инициализации, и данные пользовательской конфигурации должны быть помещены в enviornment.rb (см. Комментарии в этом файле). Если вы хотите, чтобы определенный код выполнялся во время инициализации только в разработке или только в производственной среде, поместите его в config / environment / development.rb или config / environment / production.rb соответственно.
Edit:
Хороший обзор того, когда каждый из этих файлов запускается во время инициализации, доступен здесь:
http://toolmantim.com/articles/environments_and_the_rails_initialisation_process
https://github.com/toolmantim/toolmantim/blob/master/articles/environments_and_the_rails_initialisation_process.haml
По существу, шаги:
Загружен инициализатор Rails (http://api.rubyonrails.org/classes/Rails/Initializer.html)
Инициализатор rails устанавливает протоколирование, а затем загружает environment.rb
environment.rb загружает boot.rb
boot.rb устанавливает константу RAILS_ROOT
и добавляет библиотеки rails и код приложения в LOAD_PATH
environment.rb выполняет Rails::Initializer.run
.
Загружен каркас рельсов (ActiveRecord, ActionMailer и т. Д.)
Загружен специальный файл конфигурации вашей среды (config / environment / development.rb.)
after_initialize
и to_prepare
обратные вызовы выполняются, если вы создали
Rails завершил загрузку и готов к обработке запросов