AdminLTE очень удобный и навороченый административный шаблон для управления контентом.
Установка данного шаблона на yii2 basic сводится к нескольким шагам. Итак, давайте их рассмотрим.
Первым делом нужно клонировать его из репозитория GitHub. Для этого используем следующую команду:
1 |
git clone https://github.com/bmsrox/baseapp-yii2basic-adminlte.git |
Из репозитория скопируется тема и будет находиться в папке baseapp-yii2basic-adminlte. Из этой папки копируем все в корень нужного нам проекта. На все конфликты с заменой, нажимаем заменить.
Дальше в консоли, в папке нашего проекта обновляем composer:
1 |
composer update |
Все шаблон установился. Если у Вас появилась ошибка, то вот одна из статей как устранить ошибку при composer update.
Далее следует подключение данного шаблона к нашему проекту.
Открываем конфигурационный файл config/web.php и в нем вставляем строки:
1 2 |
'layout'=>'column2', 'layoutPath'=>'@app/themes/adminLTE/layouts', |
В этом же файле в раздел componentes добавляем:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
'urlManager' => [ 'class' => 'yii\web\UrlManager', 'enablePrettyUrl' => true, 'showScriptName' => false, 'rules' => [ ''=>'site/index', '<action:(index|login|logout)>'=>'site/<action>', '<controller:\w+>/<id:\d+>' => '<controller>/view', '<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>', '<controller:\w+>/<action:\w+>' => '<controller>/<action>' ], ], 'view' => [ 'theme' => [ 'pathMap' => ['@app/views' => '@app/themes/adminLTE'], 'baseUrl' => '@web/../themes/adminLTE', ], ], |
И в раздел if (YII_ENV_DEV) { вместо строк
1 2 3 |
$config['modules']['gii'] = [ 'class' => 'yii\gii\Module', ]; |
Вставляем такие
1 2 3 4 5 6 7 8 9 10 11 |
$config['modules']['gii'] = [ 'class' => 'yii\gii\Module', 'generators' => [ //here 'crud' => [ // generator name 'class' => 'yii\gii\generators\crud\Generator', // generator class 'templates' => [ //setting for out templates 'custom' => '@app/vendor/yiisoft/yii2-gii/generators/crud/custom', // template name => path to template ] ] ], ]; |
И последним шагом в контроллере заменяем функцию actionLogout() и добавляем функцию beforeAction($action)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
public function actionLogout() { Yii::$app->user->logout(); return $this->redirect(Yii::$app->user->loginUrl); } public function beforeAction($action) { if (parent::beforeAction($action)) { // change layout for error action if ($action->id=='login') $this->layout = 'login'; return true; } else { return false; } } |
В результате чего получаем полностью рабочую административную тему
rotting
Получил такую ошибку:
The file or directory to be published does not exist: D:\wamp64\www\b2b.com\vendor/almasaeed2010/adminlte/dist
Алик
После всего сделанного выходит ошибка
The view file does not exist: C:\OpenServer\domains\localhost\test\themes\adminLTE\layouts\column2.php
admin
Добрый день.
по данному пути C:\OpenServer\domains\localhost\test\themes\adminLTE\layouts\column2.php
есть файл? проверьте.