Объясните новичку-новичку пожалуйста где я не правильно читаю докуцментацию?
Имеется:
- php 7.4
- свежепоставленный yii advanced.
в файле frontend\config\main.php
пишу:
Код: Выделить всё
'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => [
'home' => '',
'about' => 'site/about',
'contact' => 'site/contact',
'signup' => 'site/signup',
'login' => 'site/login',
'logout' => 'site/logout',
'gii' => 'gii',
'defaultRoute' => '']
]
Все работает!
в браузере ссылки выглядят как /contact, /signup, /about, /login
Все работает, ссылки ведут куда положено!
Читаю документацию по маршрутизации и динамичесвому добавлению правил, пытаюсь прикрутить.
В файле frontend\config\main.php
Ключ rules оставляю пустым массивом.
В файле frontend\config\bootstrap.php прописываю:
Код: Выделить всё
use yii\base\BootstrapInterface;
class Bootstrap implements BootstrapInterface
{
function bootstrap($app)
{
$app->getUrlManager()->addRules(
[
'home' => '',
'about' => 'site/about',
'contact' => 'site/contact',
'signup' => 'site/signup',
'login' => 'site/login',
'logout' => 'site/logout',
'gii' => 'gii',
'defaultRoute' => ''
]
);
}
}
Вроде понятно, делаю function __construct($app) вместо function bootstrap($app)
получаю: Fatal error: Class Bootstrap contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (yii\base\BootstrapInterface::bootstrap) in...
Вроде тож понятно, делаю abstract class Bootstrap... вместо class Bootstrap...
Ошибок не получаю, - уже хорошо.
Смотрю ссылки:
-about и contact (визуально) ведут на /site/about и site/contact и работают
-gii (визуально) ведет на /gii и работает
-signup и login (визуально) ведут на /signup и /login и уходят на 404.
Покажите пальцем, пожалуйста, где я чего не дочитал?