YII2 defaultRoute - Як змінити контролер за замовчуванням у шаблоні
- Останнє оновлення: 3 Листопада 2023 р.
- Перегляди: 215
- Автор: Адмін
Колеги всім привіт.
У сьогоднішній статті я вам розповім про те, як можна дуже швидко і легко поміняти контролер за умовчанням у Yii2.
За замовчуванням в Yii2 контролером є файл SiteController.php. Ми в цьому можемо переконатися, подивившись у debug tool.
Як бачимо на скріншоті значення Route є site/index, це означає, що контролер за умовчанням встановлений site і дії за замовчуванням встановлено в index.
Щоб нам змінити контролер за умовчанням у Yii2 з site на який-небудь інший нам потрібно встановити параметр, який називається defaultRoute у конфігураційному файлі вашого сайту web.php. У цьому прикладі я зроблю так, щоб контролер за промовчанням був у мене під назвою main.
Перше, що нам потрібно зробити це створити новий файл у директорії controllers під назвою MainController.php із вмістом:
namespace app\controllers;
use yii\web\Controller;
class MainController extends Controller
{
public function actions()
{
return [
'error' => [
'class' => 'yii\web\ErrorAction',
],
];
}
public function actionIndex()
{
return $this->render('index');
}
}
Наступним кроком нам потрібно встановити параметр defaultRoute у конфігураційному файлі web.php
'defaultRoute' => 'main',
У параметрі defaultRoute ми явно вказуємо, що ми хочемо, щоб у нас був контролер за умовчанням під назвою main, а за main у нас буде відповідати файл MainController.php
Тепер коли ми перезавантажимо сторінку нашого сайту, то ми побачимо в debug tool що параметр Route змінився зі значення site на main.
Всім дякую, я сподіваюся, що вам моя стаття хоч чимось допомогла.