вагон-ресторан БОРИС ВОЛЬФСОН Спецвыпуск: Хакер, номер #073, стр. 073-060-2 «Привет, мир!» на Раби с RoR class TestRubyController < ApplicationController def index render_text "Hello, world" end def another render_text "Another page!" end end Теперь нужно запустить веб-сервер. Проще всего использовать встроенный веб-сервер WEBrick (в народе «кирпич»): «ruby script\server». Теперь заходим по адресу http://127.0.0.1:3000/TestRuby и видим приветствие нашей программы, его же мы увидим, зайдя по адресу http://127.0.0.1:3000/TestRuby/index. Чтобы понять, как RoR выбирает метод и класс для обработки того или иного адреса, зайдем на http://127.0.0.1:3000/TestRuby/another и припомним одни из основных принципов RoR: «никаких конфигураций, только соглашения». [база данных.] Ладно, хватит уже играть в игрушки, давай будем использовать базу данных, хотя это тоже будет легко и приятно. Для начала в папке config подредактируем файл, который описывает различные режимы соединения с БД: Конфигурирование подключения к базе данных development: adapter: mysql database: disks username: root password: host: localhost test: adapter: mysql database: disks username: root password: host: localhost production: adapter: mysql database: disks username: root password: host: localhost Саму базу желательно создать до описываемых действий. Имя пользователя root и пустой пароль нужно будет обязательно сменить. Саму задачу я выбрал простую: мы сделаем сайт, где будет храниться информация о CD-дисках, которые имеются у нас в наличии. Сначала сделаем таблицу для дисков: Создание таблицы «Диски» CREATE TABLE `disks` ( `id` tinyint(4) NOT NULL auto_increment, `title` varchar(255) NOT NULL default '', `description` text, PRIMARY KEY (`id`) ) TYPE=MyISAM; Я бы порекомендовал создавать таблицу и работать с базой при помощи визуального средства проектирования. Думаю, поля особых пояснений не требуют. Заметь, что к данному моменту мы не написали ни единой строчки кода. Теперь создадим модель и контроллер для нашей таблицы: Создание модели и контроллера ruby script\generate model Disk ruby script\generate controller Disk Далее я не буду упоминать, что необходимо создавать модели, контроллеры и представления, так как это будет ясно из контекста и по названию файлов и классов. У нас имеется модель, которая точно отражает то, что хранится в базе данных, и шаблон обработки пользовательских действий. Теперь подправим файл controllers\disk_controller.rb: |