lmbWebAppTools - базовый набор инструментов пакета WEB_APP. Добавляется в тулкит автоматически при включении файла limb/web_app/common.inc.php
lmbWebAppTools содержит методы для получения самых базовых для web-приложения объектов, например:
Кроме getter-ов, есть соответствующие setter-ы, то есть setDispatchedRequest(), setView() и т.д.
Также есть набор служебных методов:
createController($controller_name) - получает имя контроллера в under_scores и создает объект контроллера. Например, news → new NewsContoller(). Файл с классом контроллера ищется на основе путей, указанных константой LIMB_CONTROLLERS_INCLUDE_PATH (см.
Использование констант для настройки системных параметров)
getRoutesUrl($params = array(), $route_name = ' ', $skip_controller = false) - по сути, алиас для метода
lmbRoutes ::
toUrl(), который позволяет сформировать url на основе параметров и маршрута. Обратим внимание, что парамет controller с именем текущего контроллера автоматически добавляется в $params. Параметр $skip_controller используется, чтобы отменить это поведение.
redirect($params_or_url = array(), $route_url = null, $append = '') - фактически - алиас для метода lmbHTTPResponse :: redirect($url) с тем отличием, что если в качестве первого аргумента указан массив - автоматически вызывает метод getRoutesUrl() для формирования пути по марштруту, например:
lmbToolkit :: instance()->redirect(array('action' => 'archive', 'id' => $news_id), 'news_archive_route');
lmbToolkit :: instance()->redirect('/news/archive/' . $news_id);
Параметр $append позволяет добавить к url-у какое-либо окончание:
lmbToolkit :: instance()->redirect(array('action' => 'archive', 'id' => $news_id), 'news_archive_route', '?is_approved = true');
// получим редикт на страницу с например таким адресом /news/archive/102?is_approved=true
Обсуждение