Структуру знаю еще плохо, но возник такой вопрос, возможно ли это вообще? Вопрос имеет отношение к роутингу, создал в админ-панели раздел заведения новых страниц (СЕО описания к разделам соответствующие имени контроллера) и дабы не прописывать в будущем каждый раз эти настройки, этим модулем хотел генерировать в конфиге маршрутизацию перебором в foreach.
На данный момент конфиг выглядит так:
'urlManager' => [
'enablePrettyUrl' => true,
'rules' => [
'<controller:[\w-]+>/view/<slug:[\w-]+>' => '<controller>/view',
'<controller:[\w-]+>/<action:[\w-]+>/<id:\d+>' => '<controller>/<action>',
'<controller:[\w-]+>/cat/<slug:[\w-]+>' => '<controller>/cat',
'admin' => 'admin/system/default',
['pattern' => 'admin','route' => 'admin/system/default','suffix' => '/',],
'admin/settings' => 'admin/system/settings',
'admin/settings/<action:[\w-]+>' => 'admin/system/settings/<action>',
'admin/settings/<action:[\w-]+>/<id:\d+>' => 'admin/system/settings/<action>',
['pattern' => 'admin/settings','route' => 'admin/system/settings/','suffix' => '/',],
['pattern' => 'admin/settings/<action:[\w-]+>','route' => 'admin/system/settings/<action>','suffix' => '/',],
['pattern' => 'admin/settings/<action:[\w-]+>/<id:\d+>','route' => 'admin/system/settings/<action>','suffix' => '/',],
'admin/modules' => 'admin/system/modules',
'admin/modules/<action:[\w-]+>' => 'admin/system/modules/<action>',
'admin/modules/<action:[\w-]+>/<id:\d+>' => 'admin/system/modules/<action>',
['pattern' => 'admin/modules','route' => 'admin/system/modules/','suffix' => '/',],
['pattern' => 'admin/modules/<action:[\w-]+>','route' => 'admin/system/modules/<action>','suffix' => '/',],
['pattern' => 'admin/modules/<action:[\w-]+>/<id:\d+>','route' => 'admin/system/modules/<action>','suffix' => '/',],
'admin/system' => 'admin/system/system',
'admin/system/<action:[\w-]+>' => 'admin/system/system/<action>',
'admin/system/<action:[\w-]+>/<id:\d+>' => 'admin/system/system/<action>',
['pattern' => 'admin/system','route' => 'admin/system/system/','suffix' => '/',],
['pattern' => 'admin/system/<action:[\w-]+>','route' => 'admin/system/system/<action>','suffix' => '/',],
['pattern' => 'admin/system/<action:[\w-]+>/<id:\d+>','route' => 'admin/system/system/<action>','suffix' => '/',],
'admin/logs' => 'admin/system/logs',
'admin/logs/<action:[\w-]+>' => 'admin/system/logs/<action>',
'admin/logs/<action:[\w-]+>/<id:\d+>' => 'admin/system/logs/<action>',
['pattern' => 'admin/logs','route' => 'admin/system/logs/','suffix' => '/',],
['pattern' => 'admin/logs/<action:[\w-]+>','route' => 'admin/system/logs/<action>','suffix' => '/',],
['pattern' => 'admin/logs/<action:[\w-]+>/<id:\d+>','route' => 'admin/system/logs/<action>','suffix' => '/',],
'admin/tags' => 'admin/system/tags',
'admin/tags/<action:[\w-]+>' => 'admin/system/tags/<action>',
'admin/tags/<action:[\w-]+>/<id:\d+>' => 'admin/system/tags/<action>',
['pattern' => 'admin/tags','route' => 'admin/system/tags/','suffix' => '/',],
['pattern' => 'admin/tags/<action:[\w-]+>','route' => 'admin/system/tags/<action>','suffix' => '/',],
['pattern' => 'admin/tags/<action:[\w-]+>/<id:\d+>','route' => 'admin/system/tags/<action>','suffix' => '/',],
'admin/user' => 'admin/system/user',
'admin/user/<action:[\w-]+>' => 'admin/system/user/<action>',
'admin/user/<action:[\w-]+>/<id:\d+>' => 'admin/system/user/<action>',
['pattern' => 'admin/user','route' => 'admin/system/user/','suffix' => '/',],
['pattern' => 'admin/user/<action:[\w-]+>','route' => 'admin/system/user/<action>','suffix' => '/',],
['pattern' => 'admin/user/<action:[\w-]+>/<id:\d+>','route' => 'admin/system/user/<action>','suffix' => '/',],
'admin/role' => 'admin/system/role',
'admin/role/<action:[\w-]+>' => 'admin/system/role/<action>',
'admin/role/<action:[\w-]+>/<id:\d+>' => 'admin/system/role/<action>',
['pattern' => 'admin/role','route' => 'admin/system/role/','suffix' => '/',],
['pattern' => 'admin/role/<action:[\w-]+>','route' => 'admin/system/role/<action>','suffix' => '/',],
['pattern' => 'admin/role/<action:[\w-]+>/<id:\d+>','route' => 'admin/system/role/<action>','suffix' => '/',],
'admin/permission' => 'admin/system/permission',
'admin/permission/<action:[\w-]+>' => 'admin/system/permission/<action>',
'admin/permission/<action:[\w-]+>/<id:\d+>' => 'admin/system/permission/<action>',
['pattern' => 'admin/permission','route' => 'admin/system/permission/','suffix' => '/',],
['pattern' => 'admin/permission/<action:[\w-]+>','route' => 'admin/system/permission/<action>','suffix' => '/',],
['pattern' => 'admin/permission/<action:[\w-]+>/<id:\d+>','route' => 'admin/system/permission/<action>','suffix' => '/',],
'admin/rule' => 'admin/system/rule',
'admin/rule/<action:[\w-]+>' => 'admin/system/rule/<action>',
'admin/rule/<action:[\w-]+>/<id:\d+>' => 'admin/system/rule/<action>',
['pattern' => 'admin/rule','route' => 'admin/system/rule/','suffix' => '/',],
['pattern' => 'admin/rule/<action:[\w-]+>','route' => 'admin/system/rule/<action>','suffix' => '/',],
['pattern' => 'admin/rule/<action:[\w-]+>/<id:\d+>','route' => 'admin/system/rule/<action>','suffix' => '/',],
],
],
Как отправить запрос в бд из конфига, чтобы собрать нужный мне массив?
Такой подход не совсем правильный. Конфиг есть конфиг и оттуда не стоит лезть в БД. Я бы посмотрел в сторону предзагрузки. В общем это выглядит так:
В итоге получаем аккуратный конфиг и отдельно обработку и добавление правил к урлам. Тут чуть подробнее по добавлению правил динамически.
Тут немного о предзагрузке.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Подскажите, пожалуйста, есть див в котором находится изображение и див с текстом, как сделать, чтобы высота изображения автоматически подстраивалась...
При уменьшении окна браузера панель навигации сворачивается, но раскрыть её обратно не получается, хотелось бы чтобы при нажатии на кнопку...
При создании прямоугольника с сделал обводку, хотел изменить прозрачность середины, но чтобы обводка не была прозрачной
Например, если наводим на 2ой или 3й блок, то у первого блока цвет становится как у остальных - серыйЕсли курсор за пределами всех блоков, то у первого...