Часто при разработке проекта разбитого на несколько приложений возникает проблема: как получить урл на ресурс из другого приложения проекта. Допустим у вас в проекте есть приложения: форум, интернет-магазин, панель управления и промо-сайт. Все это приложения относятся к одному проекту, но приложения: форум, интернет-магазин и промо сайт должны управляться через «панель управления».
Соотвественно у «панели управления» есть свой компонент UrlManager со своими правилами для построения урлов, который отвечает только за построение урлов «панели управления» и который совершенно не знает о правилах для других приложений. Но в панели управления нам нужно получать ссылки на ресурсы других приложений. Как же быть в таком случае?
На самом деле решается все довольно просто, мы просто создаем несколько экземпляров UrlManager в «панели управления» каждый из которых используют правила урлов из соотвествующих приложений. Т.е. в конфигурации мы получаем следующий примерно код:
//...'components' => [ //... 'urlManager' => [ // правила урлов для панели управления ],
'urlManagerForum' => [ // правила урлов для форума 'class' => 'yiiwebUrlManager', 'baseUrl' => '', 'enablePrettyUrl' => true, 'enableStrictParsing' => true, 'showScriptName' => false, 'rules' => include("forum/config/inc/urlRules.php") //файл с правилами для форума],
],//...
Для получения урла для форума нам надо просто вызвать код вида:
echo Yii::$app->urlManagerForum->createUrl(['post/detail', 'postId' => $model->id]);
Все очень просто
Zulip — программное обеспечение для реализации корпоративного чата. Разработан в 2012 году, в 2014 был…
Zookeeper — cервис-координатор, который позволяет обеспечить контроль синхронизации данных. Разработан на Java компанией Apache Software…
Zimbra — программное обеспечение для реализации почтового сервиса или, если сказать точнее, автоматизации совместной деятельности…
Zabbix — бесплатная система мониторинга. Позволяет отслеживать состояние сетевых узлов, компьютеров и серверов. Возможности: Поддержка…
YouTube — компания-владелец одноименного портала для просмотра и хранения видео. Чтобы пользоваться данным порталом достаточно…
Yota — провайдер, предоставляющий доступ к сети Интернет по беспроводной связи. Впервые, сервис начал работать…