RoR - разработка

Ruby On Rails

  • Архитектура приложений Rails
  • Установка Rails
  • Немедленное использование
  • Интернет-магазин
    • Задача 3: тестирование
    • Задача А: ведение учета товаров
    • Задача Б: отображение каталога товаров
    • Задача В: создание корзины
    • Задача Г: усиливаем приложение за счет использования AJAX
    • Задача Д: оформление покупки
    • Задача Е: администрирование
    • Задача Ж: окончательная доработка
  • Углубленное изучение Rails
  • Active Support
  • Миграции
  • Active Record
    • Основы
    • Связи между таблицами
    • Жизненный цикл объекта
  • Action Controller: маршрутизация и URL
  • Action Controller и Rails
  • Action View
  • Веб 2.0
  • Action Mailer
  • Веб-службы Rails
  • Безопасность и развертывание приложения
    • Организация защиты Rails-приложения
    • Развертывание и эксплуатация
  • Справка по Ruby
Главная

Создание приложения по учету товаров

Теперь можно считать всю подготовительную работу завершенной. Мы создали
приложение Depot, являющееся проектом Rails. Создали базу данных, предназначенную
для разработки, и настроили приложение на подключение к этой базе
данных. Мы создали контроллер admin и модель product и воспользовались миграцией
для создания соответствующей ей таблицы products. Теперь настало
время создать приложение по учету товаров.
Откройте в своем текстовом редакторе файл admin_controller.rb, который находится
в каталоге app/controllers. В нем будет содержаться следующий код:
class AdminControtter < ApplicationController
end
Отредактируйте его, добавив одну строку, чтобы он приобрел следующий вид:
Листинг файла app/controllers/admin_controller.rb
class AdminController < ApplicationController
scaffold rproduct
end
Согласитесь, пока все предельно просто.
А ведь эта добавленная строка привела к созданию элементарного приложения
для ведения данных. Объявление scaffold предписывает Rails во время выполнения
сгенерировать код приложения, а параметр : product сообщает среде,
что мы хотим работать с данными, используя модель product. Перед тем как разобраться
со всем, что произошло вне нашего поля зрения, опробуем это свежеиспеченное
приложение. Сначала запустим поставляемый вместе с Rails веб-сервер
на базе WEBrick.
depot> ruby script/server
=> Booting WEBrick...
=> Rails application started on http:11% .0.0.0:3000
=> Ctrl-C to shutdown server; call with --help for options
[2006-01-09 19:41:37] INFO WEBrick 1.3.1
[2006-01-09 19:41:37] INFO ruby 1.8.2 (2004-12-30) [powerpc-darwin8.2.0]
[2006-01-09 19:41:37] INFO WEBrick::HTTPServer#start: pid=4323 port=3000
Так же как и при работе с нашим учебным приложением в главе 4, «Немедленное
использование», эта команда запускает веб-сервер на локальном компьютере
localhost, используя порт 3000. Подключимся к этому веб-серверу. Следует запомнить, что вводимый в браузер URL состоит из номера порта и имени контроллера,
набранного строчными буквами (admin).Поскольку перечень товаров пуст, ничего интересного мы там не увидим. Давайте
этот перечень чем-нибудь наполним. Щелчок на ссылке New product (Новый
товар) приведет к появлению формы, которую нужно будет заполнить.После щелчка на кнопке Create (Создать) вашему взору откроется новый товар,
занесенный в перечень (рис. 6.1). Конечно, интерфейс может показаться не
слишком привлекательным, но он работает, и мы может предъявить его на утверждение
заказчику. Тот может опробовать другие ссылки (ведущие к отображению
подробностей, редактированию сведений об имеющемся товаре и т. д.). Нужно
объяснить, что это всего лишь первый шаг и мы знаем, что он далек от совершенства,
но нам хотелось получить отзыв заказчика как можно раньше. (И 25 минут,
прошедшие с начала программирования, будут считаться в какой-нибудь другой
книге слишком ранним сроком для предъявления работы заказчику.)