# coding: utf-8

1.2.3 Первое приложение

Фактически все приложения Rails начинают одинаково - с команды rails. Эта удобная программа создает скелет приложения Rails в любом каталоге на Ваш вкус. Чтобы начать, создайте каталог для своих проектов Rails, а затем выполните команду rails, чтобы создать первое приложение:

Листинг 1.1. Запуск rails скрипта , для генерации нового приложения.
  $ mkdir rails_projects
  $ cd rails_projects
  $ rails new first_app
        create  
        create  README
        create  .gitignore
        create  Rakefile
        create  config.ru
        create  Gemfile
        create  app
        create  app/controllers/application_controller.rb
        create  app/helpers/application_helper.rb
        create  app/views/layouts/application.html.erb
        create  app/models
        create  config
        create  config/routes.rb
        create  config/application.rb
        create  config/environment.rb
        .
        .
        .

Отметьте, сколько файлов и каталогов создает команда rails. Эта стандартная структура файлов и каталогов (Рис 1.2) является одним из многих преимуществ Rails; это немедленно переносит Вас от нуля к действующему (минимально) приложению. Кроме того, так как эта структура является общей для всех приложений Rails, можно сразу сориентироваться, глядя на чей-либо код. Обзор дефолтных файлов Rails представлен в Таблице 1.1; мы узнаем о большинстве этих файлов и каталогов в остальной части этой книги.

Рисунок 1.2: Структура каталогов недавно вылупившегося Rails приложения .

Рисунок 1.2: Структура каталогов недавно вылупившегося приложения Rails.


Файл/КаталогНазначение
app/ Базовый код приложения, включает модели, представления, контроллеры, и помощники (хелперы)
config/ Конфигурация приложения
db/ Файлы для манипуляций с базой данных
doc/ Документация для приложения
lib/ Модули библиотеки
log/ log файлы приложения
public/Публично доступные данные (например, веб-браузерам), такие как изображения и каскадные таблицы стилей (CSS)
script/rails Сценарии, предоставляемые Rails для генерирования кода, открытия консольных сессий, или запуска локального веб-сервера
test/ Тесты приложения будут заменены ( spec/ каталогом Раздел 3.1.2)
tmp/ Временные файлы
vendor/ Сторонний код, такой как плагины и гемы
README Краткое описание(инструкция по использованию) приложения
Rakefile Служебные задачи, доступные через rake команду
Gemfile Гемы запрашиваемые для этого приложения
config.ru Конфигурационный файл для Rack middleware
.gitignore Перечень файлов, которые должны игнорироваться Git

Таблица 1.1: Обзор дефолтной структуры каталогов Rails.

# coding: utf-8