CGI::Application. Основные методы приложений CGI::Application

Частичный перевод CGI::Application / Essential Application Methods .
Это только одна из четырех частей перевода. Остальные будут опубликованы позднее.
Как всегда — все примеры кода — авторские.

P.S. Если кто-нибудь подскажет, как корректно перевести на русский «Essential Application Methods» — буду очень признательна.

Поскольку, я — поклонница Template Toolkit, и не вижу особого смысла использовать иные системы шаблонов, если TT доступен, в данном документе опущено описание методов load_tmpl() и tmpl_path().

param()

Метод param() может использоваться для получения значений параметров, или для установки нужных значений определенным параметрам. Если установить значения параметров из метода setup — эти значения станут доступны из любой части кода приложения, так же, как и самые обычные значения параметров.

Если вызвать param() в контексте списка, метод вернет полный список всех существующих в данный момент параметров.

Не стоит путать этот метод с методом param() модуля CGI.

query()

Метод query() возвращает ссылку на объект query модуля CGI.pm . Сам объект создается при вызове метода new() CGI::Application.

Используется метод query(), как и обычно, для доступа к данным, которые передает клиент.

run_modes()

Метод определяет таблицу соответствия возможных режимов (статусов) работы приложения и подпрограмм, которые выполняются, при запуске приложения в определенном режиме.

run_modes() можно вызывать неограниченное число раз. Указанные режимы и подпрограммы будут добавлены к уже существующему списку. Если одному и тому же режиму назначаются в соответствие поочередно 2 и более разных подпрограмм — в итоге будет вызываться последний назначенный вариант.

Подготовленная методом run_modes() таблица используется методом run() для запуска требуемых функций и передачи им параметров запроса.

От назначенных методом run_modes() подпрограмм ожидается, что они вернут текстовый блок информации (например, готовый код html-страницы), который без дополнительных преобразований будет отправлен клиенту.

start_mode()

Метод start_mode() назначает режим (один из определенных в списке run_modes() ), который будет вызываться по-умолчанию, когда клиент не указал нужный режим в списке передаваемых параметров.

Если режим не назначен с помощью start_mode(), CGI::Application в подобных случаях будет по-умолчанию вызывать режим «start».