В качестве примера берем расширение Yii2-user где есть модули в админке со своими путями.
Правила прописаны в виде переменной в файле Module.php в корневой папке расширения
Код: Выделить всё
public $urlPrefix = 'user';
/** @var array The rules to be used in URL management. */
public $urlRules = [
'<id:\d+>' => 'profile/show',
// ..... и тут еще много
];
Код: Выделить всё
$configUrlRule = [
'prefix' => $module->urlPrefix,
'rules' => $module->urlRules,
];
if ($module->urlPrefix != 'user') {
$configUrlRule['routePrefix'] = 'user';
}
$configUrlRule['class'] = 'yii\web\GroupUrlRule';
$rule = Yii::createObject($configUrlRule);
$app->urlManager->addRules([$rule], false);
Делаем все точно так же.
Кстати механизм добавления ссылок обсуждался еще давным давно - 2011 quing и samdark - - практически тоже самое.
Делаем тоже самое.
Но никак.
Добавила модуль в bootstrap
Код: Выделить всё
'bootstrap' => ['log', 'posts'],
В Debug панели вижу (UPD: yii\web\GroupUrlRule - везде вылезает )
Урлы не работают - если добавить вручную config/main.php - то все ОК
В чем может быть проблема?
Есть ли другая возможность как-то добавить свои правила для расширения?