Программирование на языке Ruby
Шрифт:
19.7.2. Использование erb
Для начала договоримся о терминологии. Речь не идет о встраивании интерпретатора Ruby в электронные устройства, скажем, в телевизор или тостер. Мы говорим о встраивании кода на Ruby в текст.
Далее отметим, что встраивать Ruby-код в текстовые файлы можно несколькими способами. В этом разделе мы рассмотрим лишь самый общеупотребительный инструмент, а именно программу
Почему мы упоминаем подобный инструмент в связи с Web? Очевидно, потому, что чаще всего Ruby-код встраивается в HTML или XML-тексты.
Но можно придумать и другие применения.
Утилита
Текст, который нужно специально обрабатывать, заключается в скобки
Если первый символ — знак равенства (
Если назвать этот файл
Результат направляется на стандартный вывод:
Комментарий вводится символом
Как и следовало ожидать, комментарии игнорируются, то есть мы увидим такой результат:
Все остальные символы после знака процента рассматриваются как часть кода. Все, что этот код выводит (не результат вычисления значения), помещается в текстовый поток. Для удобства восприятия рекомендую оставлять после процента пробел, хотя
В следующем примере тег в первой строчке ничего не вставляет в текст, так как ничего не выводит. Во вторую же строку вставляется
Результат получается такой:
Фрагменты кода на Ruby не являются независимыми. Так, переменную, определенную в одном теге, можно использовать в следующем за ним.
Пробелы
Попробуйте сделать внутри тега синтаксическую ошибку. Вы обнаружите, что
Что если включить «магическую строку» в сам текст в виде литерала? Экранирование с помощью обратной косой черты не работает. Мы рекомендуем такой способ:
Результат таков:
Включать открывающий тег немного проще, чем закрывающий. Объясняется это тем, что теги не могут быть вложенными, а программа
Конечно, в
Режим
Можно настроить сервер Apache так, что он будет распознавать страницы с встроенным кодом на Ruby. Для этого нужно ассоциировать тип
19.7.3. Сервер WEBrick
Авторами WEBrick являются Масаёси Такахаши (Masayoshi Takahashi) и Юзоу Готоу (Yuuzou Gotou) при участии многих других разработчиков. Это библиотека для создания полноценного HTTP-сервера; она входит в стандартный дистрибутив Ruby. Название происходит от слова «brick» (кирпич) — то есть подразумевается нечто небольшое, компактное и автономное.
Стрела времени (сборник)
Мир приключений изд. Правда
Фантастика:
научная фантастика
рейтинг книги
Земля лишних. За други своя
2. Земля лишних
Фантастика:
боевая фантастика
рейтинг книги
Хранить вечно
Документальная литература:
биографии и мемуары
рейтинг книги
Наследники Фауста
Фантастика:
альтернативная история
рейтинг книги
Гримуар темного лорда V
5. Гримуар темного лорда
Фантастика:
попаданцы
аниме
фэнтези
рейтинг книги
Тринадцатый III
3. Видящий смерть
Фантастика:
фэнтези
попаданцы
аниме
рейтинг книги
Сирота
1. Светлая Тьма
Фантастика:
юмористическое фэнтези
городское фэнтези
аниме
рейтинг книги
Контора
Проза:
современная проза
афоризмы
рейтинг книги
Рано или поздно
Дадли
Любовные романы:
исторические любовные романы
рейтинг книги
Добротолюбие
рейтинг книги