Занимаюсь обновлением проекта и перевожу его на bootstrap4
мой composer.json
Код: Выделить всё
{
"name": "yiisoft/yii2-app-advanced",
"description": "Yii 2 Advanced Project Template",
"keywords": ["yii2", "framework", "advanced", "project template"],
"homepage": "http://www.yiiframework.com/",
"type": "project",
"license": "BSD-3-Clause",
"support": {
"issues": "https://github.com/yiisoft/yii2/issues?state=open",
"forum": "http://www.yiiframework.com/forum/",
"wiki": "http://www.yiiframework.com/wiki/",
"irc": "irc://irc.freenode.net/yii",
"source": "https://github.com/yiisoft/yii2"
},
"minimum-stability": "stable",
"require": {
"php": ">=7.0",
"yiisoft/yii2": "^2.0.16",
"yiisoft/yii2-swiftmailer": "2.1.2",
"yiisoft/yii2-httpclient": "^2.0.11",
"yiisoft/yii2-bootstrap4": "^2.0.5",
"yiisoft/yii2-redis": "^2.0.9",
"fxp/composer-asset-plugin": "^1.4.5",
"skeeks/yii2-assets-auto-compress": "^1.4.2",
"codemix/yii2-localeurls": "^1.7.1",
"yii2mod/yii2-scheduling": "^1.1.1",
"onmotion/yii2-widget-apexcharts": "^1.0",
"wfstudioru/yii2-yandex-translate-api": "dev-master",
"phpoffice/phpspreadsheet": "^1.6.0",
"phpoffice/phpexcel": "^1.8.2",
"bajadev/yii2-dynamicform": "^2.2.2",
"hguenot/yii2-gsftp": "^1.1",
"setasign/fpdf": "^1.8.1",
"kartik-v/yii2-widget-select2": "^2.1.3",
"kartik-v/yii2-widget-datepicker": "^1.4",
"kartik-v/yii2-widget-timepicker": "^1.0",
"kartik-v/yii2-grid": "^3.3",
"kartik-v/yii2-date-range": "^1.7",
"kartik-v/yii2-bootstrap4-dropdown": "^1.0",
"kartik-v/yii2-editable": "^1.0",
"kartik-v/yii2-widget-activeform": "^1.5",
"kartik-v/yii2-widget-fileinput": "^1.0"
},
"require-dev": {
"yiisoft/yii2-debug": "^2.1.5",
"yiisoft/yii2-gii": "^2.1.0",
"yiisoft/yii2-faker": "^2.0.4",
"phpstan/phpstan": "^0.7"
},
"config": {
"process-timeout": 1800,
"fxp-asset":{
"installer-paths": {
"npm-asset-library": "vendor/npm",
"bower-asset-library": "vendor/bower"
}
}
}
}
Код: Выделить всё
<?php
namespace cabinet\assets;
use yii\web\AssetBundle;
/**
* @author Qiang Xue <qiang.xue@gmail.com>
* @since 2.0
*/
class AppAsset extends AssetBundle
{
public $jsOptions = ['position' => \yii\web\View::POS_HEAD];
public $basePath = '@webroot';
public $baseUrl = '@web';
public $css = [
'/plugins/font-awesome/css/font-awesome.min.css',
'https://code.ionicframework.com/ionicons/2.0.1/css/ionicons.min.css',
...
];
public $js = [
'/plugins/jquery/jquery.min.js',
'https://code.jquery.com/ui/1.12.1/jquery-ui.min.js',
'https://cdnjs.cloudflare.com/ajax/libs/raphael/2.1.0/raphael-min.js',
...
'/plugins/js/main.js',
'/plugins/js/translit.js',
];
public $depends = [
'yii\web\YiiAsset',
'yii\bootstrap4\BootstrapPluginAsset',
];
}
и так вот в результате на одной из страниц
Код: Выделить всё
2019-07-17 11:35:00 [127.0.0.1][3][lo1iiqguptkovh3iee2hugb46p][error][yii\base\InvalidConfigException] ReflectionException: Class yii\bootstrap\BootstrapAsset does not exist in /var/www/project/vendor/yiisoft/yii2/di/Container.php:431
Stack trace:
#0 /var/www/project/vendor/yiisoft/yii2/di/Container.php(431): ReflectionClass->__construct('yii\\bootstrap\\B...')
#1 /var/www/project/vendor/yiisoft/yii2/di/Container.php(365): yii\di\Container->getDependencies('yii\\bootstrap\\B...')
#2 /var/www/project/vendor/yiisoft/yii2/di/Container.php(156): yii\di\Container->build('yii\\bootstrap\\B...', Array, Array)
#3 /var/www/project/vendor/yiisoft/yii2/BaseYii.php(349): yii\di\Container->get('yii\\bootstrap\\B...', Array, Array)
#4 /var/www/project/vendor/yiisoft/yii2/web/AssetManager.php(264): yii\BaseYii::createObject(Array)
#5 /var/www/project/vendor/yiisoft/yii2/web/AssetManager.php(237): yii\web\AssetManager->loadBundle('yii\\bootstrap\\B...', Array, true)
#6 /var/www/project/vendor/yiisoft/yii2/web/View.php(286): yii\web\AssetManager->getBundle('yii\\bootstrap\\B...')
#7 /var/www/project/vendor/yiisoft/yii2/web/View.php(291): yii\web\View->registerAssetBundle('yii\\bootstrap\\B...', NULL)
#8 /var/www/project/vendor/yiisoft/yii2/web/View.php(291): yii\web\View->registerAssetBundle('kartik\\popover\\...', NULL)
#9 /var/www/project/vendor/yiisoft/yii2/web/AssetBundle.php(125): yii\web\View->registerAssetBundle('kartik\\editable...')
#10 /var/www/project/vendor/kartik-v/yii2-editable/src/Editable.php(582): yii\web\AssetBundle::register(Object(yii\web\View))
#11 /var/www/project/vendor/kartik-v/yii2-editable/src/Editable.php(670): kartik\editable\Editable->registerAssets()
#12 /var/www/project/vendor/kartik-v/yii2-editable/src/Editable.php(565): kartik\editable\Editable->initEditable()
#13 /var/www/project/vendor/yiisoft/yii2/base/BaseObject.php(109): kartik\editable\Editable->init()
#14 [internal function]: yii\base\BaseObject->__construct(Array)
#15 /var/www/project/vendor/yiisoft/yii2/di/Container.php(384): ReflectionClass->newInstanceArgs(Array)
#16 /var/www/project/vendor/yiisoft/yii2/di/Container.php(156): yii\di\Container->build('kartik\\editable...', Array, Array)
#17 /var/www/project/vendor/yiisoft/yii2/BaseYii.php(349): yii\di\Container->get('kartik\\editable...', Array, Array)
#18 /var/www/project/vendor/yiisoft/yii2/base/Widget.php(137): yii\BaseYii::createObject(Array)
#19 /var/www/project/vendor/kartik-v/yii2-grid/src/EditableColumn.php(163): yii\base\Widget::widget(Array)
#20 /var/www/project/vendor/kartik-v/yii2-grid/src/DataColumn.php(242): kartik\grid\EditableColumn->renderDataCellContent(Object(common\models\SearchStop), 3, 0)
#21 /var/www/project/vendor/yiisoft/yii2/grid/GridView.php(525): kartik\grid\DataColumn->renderDataCell(Object(common\models\SearchStop), 3, 0)
#22 /var/www/project/vendor/yiisoft/yii2/grid/GridView.php(494): yii\grid\GridView->renderTableRow(Object(common\models\SearchStop), 3, 0)
#23 /var/www/project/vendor/kartik-v/yii2-grid/src/GridView.php(1279): yii\grid\GridView->renderTableBody()
#24 /var/www/project/vendor/yiisoft/yii2/grid/GridView.php(358): kartik\grid\GridView->renderTableBody()
#25 /var/www/project/vendor/yiisoft/yii2/widgets/BaseListView.php(160): yii\grid\GridView->renderItems()
#26 /var/www/project/vendor/yiisoft/yii2/grid/GridView.php(326): yii\widgets\BaseListView->renderSection('{items}')
#27 /var/www/project/vendor/yiisoft/yii2/widgets/BaseListView.php(135): yii\grid\GridView->renderSection('{items}')
#28 [internal function]: yii\widgets\BaseListView->yii\widgets\{closure}(Array)
#29 /var/www/project/vendor/yiisoft/yii2/widgets/BaseListView.php(138): preg_replace_callback('/{\\w+}/', Object(Closure), '{summary}\n<div ...')
#30 /var/www/project/vendor/yiisoft/yii2/grid/GridView.php(301): yii\widgets\BaseListView->run()
#31 /var/www/project/vendor/kartik-v/yii2-grid/src/GridView.php(1201): yii\grid\GridView->run()
#32 /var/www/project/vendor/yiisoft/yii2/base/Widget.php(140): kartik\grid\GridView->run()
#33 /var/www/projvelopment/project/frontend/views/groups/black-list.php(123): yii\base\Widget::widget(Array)
#34 /var/www/project/vendor/yiisoft/yii2/base/View.php(348): require('/var/www/proj...')
#35 /var/www/project/vendor/yiisoft/yii2/base/View.php(257): yii\base\View->renderPhpFile('/var/www/proj...', '[<span class="s...')
#36 /var/www/project/vendor/yiisoft/yii2/base/View.php(156): yii\base\View->renderFile('/var/www/proj...', Array, Object(frontend\controllers\GroupsController))
#37 /var/www/project/vendor/yiisoft/yii2/base/Controller.php(384): yii\base\View->render('black-list', Array, Object(frontend\controllers\GroupsController))
#38 /var/www/projvelopment/project/frontend/controllers/GroupsController.php(341): yii\base\Controller->render('black-list', Array)
#39 [internal function]: frontend\controllers\GroupsController->actionBlackList()
#40 /var/www/project/vendor/yiisoft/yii2/base/InlineAction.php(57): call_user_func_array(Array, Array)
#41 /var/www/project/vendor/yiisoft/yii2/base/Controller.php(157): yii\base\InlineAction->runWithParams(Array)
#42 /var/www/project/vendor/yiisoft/yii2/base/Module.php(528): yii\base\Controller->runAction('black-list', Array)
#43 /var/www/project/vendor/yiisoft/yii2/web/Application.php(103): yii\base\Module->runAction('groups/black-li...', Array)
#44 /var/www/project/vendor/yiisoft/yii2/base/Application.php(386): yii\web\Application->handleRequest(Object(yii\web\Request))
#45 /var/www/projvelopment/project/frontend/web/index.php(18): yii\base\Application->run()
#46 {main}
Next yii\base\InvalidConfigException: Failed to instantiate component or class "yii\bootstrap\BootstrapAsset". in /var/www/project/vendor/yiisoft/yii2/di/Container.php:433
Stack trace:
#0 /var/www/project/vendor/yiisoft/yii2/di/Container.php(365): yii\di\Container->getDependencies('yii\\bootstrap\\B...')
#1 /var/www/project/vendor/yiisoft/yii2/di/Container.php(156): yii\di\Container->build('yii\\bootstrap\\B...', Array, Array)
#2 /var/www/project/vendor/yiisoft/yii2/BaseYii.php(349): yii\di\Container->get('yii\\bootstrap\\B...', Array, Array)
#3 /var/www/project/vendor/yiisoft/yii2/web/AssetManager.php(264): yii\BaseYii::createObject(Array)
#4 /var/www/project/vendor/yiisoft/yii2/web/AssetManager.php(237): yii\web\AssetManager->loadBundle('yii\\bootstrap\\B...', Array, true)
#5 /var/www/project/vendor/yiisoft/yii2/web/View.php(286): yii\web\AssetManager->getBundle('yii\\bootstrap\\B...')
#6 /var/www/project/vendor/yiisoft/yii2/web/View.php(291): yii\web\View->registerAssetBundle('yii\\bootstrap\\B...', NULL)
#7 /var/www/project/vendor/yiisoft/yii2/web/View.php(291): yii\web\View->registerAssetBundle('kartik\\popover\\...', NULL)
#8 /var/www/project/vendor/yiisoft/yii2/web/AssetBundle.php(125): yii\web\View->registerAssetBundle('kartik\\editable...')
#9 /var/www/project/vendor/kartik-v/yii2-editable/src/Editable.php(582): yii\web\AssetBundle::register(Object(yii\web\View))
#10 /var/www/project/vendor/kartik-v/yii2-editable/src/Editable.php(670): kartik\editable\Editable->registerAssets()
#11 /var/www/project/vendor/kartik-v/yii2-editable/src/Editable.php(565): kartik\editable\Editable->initEditable()
#12 /var/www/project/vendor/yiisoft/yii2/base/BaseObject.php(109): kartik\editable\Editable->init()
#13 [internal function]: yii\base\BaseObject->__construct(Array)
#14 /var/www/project/vendor/yiisoft/yii2/di/Container.php(384): ReflectionClass->newInstanceArgs(Array)
#15 /var/www/project/vendor/yiisoft/yii2/di/Container.php(156): yii\di\Container->build('kartik\\editable...', Array, Array)
#16 /var/www/project/vendor/yiisoft/yii2/BaseYii.php(349): yii\di\Container->get('kartik\\editable...', Array, Array)
#17 /var/www/project/vendor/yiisoft/yii2/base/Widget.php(137): yii\BaseYii::createObject(Array)
#18 /var/www/project/vendor/kartik-v/yii2-grid/src/EditableColumn.php(163): yii\base\Widget::widget(Array)
#19 /var/www/project/vendor/kartik-v/yii2-grid/src/DataColumn.php(242): kartik\grid\EditableColumn->renderDataCellContent(Object(common\models\SearchStop), 3, 0)
#20 /var/www/project/vendor/yiisoft/yii2/grid/GridView.php(525): kartik\grid\DataColumn->renderDataCell(Object(common\models\SearchStop), 3, 0)
#21 /var/www/project/vendor/yiisoft/yii2/grid/GridView.php(494): yii\grid\GridView->renderTableRow(Object(common\models\SearchStop), 3, 0)
#22 /var/www/project/vendor/kartik-v/yii2-grid/src/GridView.php(1279): yii\grid\GridView->renderTableBody()
#23 /var/www/project/vendor/yiisoft/yii2/grid/GridView.php(358): kartik\grid\GridView->renderTableBody()
#24 /var/www/project/vendor/yiisoft/yii2/widgets/BaseListView.php(160): yii\grid\GridView->renderItems()
#25 /var/www/project/vendor/yiisoft/yii2/grid/GridView.php(326): yii\widgets\BaseListView->renderSection('{items}')
#26 /var/www/project/vendor/yiisoft/yii2/widgets/BaseListView.php(135): yii\grid\GridView->renderSection('{items}')
#27 [internal function]: yii\widgets\BaseListView->yii\widgets\{closure}(Array)
#28 /var/www/project/vendor/yiisoft/yii2/widgets/BaseListView.php(138): preg_replace_callback('/{\\w+}/', Object(Closure), '{summary}\n<div ...')
#29 /var/www/project/vendor/yiisoft/yii2/grid/GridView.php(301): yii\widgets\BaseListView->run()
#30 /var/www/project/vendor/kartik-v/yii2-grid/src/GridView.php(1201): yii\grid\GridView->run()
#31 /var/www/project/vendor/yiisoft/yii2/base/Widget.php(140): kartik\grid\GridView->run()
#32 /var/www/projvelopment/project/frontend/views/groups/black-list.php(123): yii\base\Widget::widget(Array)
#33 /var/www/project/vendor/yiisoft/yii2/base/View.php(348): require('/var/www/proj...')
#34 /var/www/project/vendor/yiisoft/yii2/base/View.php(257): yii\base\View->renderPhpFile('/var/www/proj...', '[<span class="s...')
#35 /var/www/project/vendor/yiisoft/yii2/base/View.php(156): yii\base\View->renderFile('/var/www/proj...', Array, Object(frontend\controllers\GroupsController))
#36 /var/www/project/vendor/yiisoft/yii2/base/Controller.php(384): yii\base\View->render('black-list', Array, Object(frontend\controllers\GroupsController))
#37 /var/www/projvelopment/project/frontend/controllers/GroupsController.php(341): yii\base\Controller->render('black-list', Array)
#38 [internal function]: frontend\controllers\GroupsController->actionBlackList()
#39 /var/www/project/vendor/yiisoft/yii2/base/InlineAction.php(57): call_user_func_array(Array, Array)
#40 /var/www/project/vendor/yiisoft/yii2/base/Controller.php(157): yii\base\InlineAction->runWithParams(Array)
#41 /var/www/project/vendor/yiisoft/yii2/base/Module.php(528): yii\base\Controller->runAction('black-list', Array)
#42 /var/www/project/vendor/yiisoft/yii2/web/Application.php(103): yii\base\Module->runAction('groups/black-li...', Array)
#43 /var/www/project/vendor/yiisoft/yii2/base/Application.php(386): yii\web\Application->handleRequest(Object(yii\web\Request))
#44 /var/www/projvelopment/project/frontend/web/index.php(18): yii\base\Application->run()
#45 {main}
2019-07-17 11:34:58 [127.0.0.1][3][lo1iiqguptkovh3iee2hugb46p][info][application] $_GET = []
$_POST = []
$_FILES = []
$_COOKIE = [
'_cmsIdentity' => '22a9c1076eb9f524fbaa1e3e1f90d339f8bd7622ad62cae80c33b0a520e59fefa:2:{i:0;s:12:\"_cmsIdentity\";i:1;s:16:\"[3,null,2592000]\";}'
'_csrf' => '4b09c37a7b2cfd79a0baa28849455cb44a094ca45218cba5976da9d827e9e5c7a:2:{i:0;s:5:\"_csrf\";i:1;s:32:\"kXKHwE8hWYkAgrlg9jcAFSknvh-X5Pkj\";}'
'PHPSESSID' => 'lo1iiqguptkovh3iee2hugb46p'
]
$_SESSION = [
'__flash' => []
'__id' => 3
'__expire' => 1566041699
]
$_SERVER = [
'USER' => 'www-data'
'HOME' => '/var/www'
'HTTP_CACHE_CONTROL' => 'max-age=0'
'HTTP_UPGRADE_INSECURE_REQUESTS' => '1'
'HTTP_COOKIE' => '_cmsIdentity=22a9c1076eb9f524fbaa1e3e1f90d339f8bd7622ad62cae80c33b0a520e59fefa%3A2%3A%7Bi%3A0%3Bs%3A12%3A%22_cmsIdentity%22%3Bi%3A1%3Bs%3A16%3A%22%5B3%2Cnull%2C2592000%5D%22%3B%7D; _csrf=4b09c37a7b2cfd79a0baa28849455cb44a094ca45218cba5976da9d827e9e5c7a%3A2%3A%7Bi%3A0%3Bs%3A5%3A%22_csrf%22%3Bi%3A1%3Bs%3A32%3A%22kXKHwE8hWYkAgrlg9jcAFSknvh-X5Pkj%22%3B%7D; PHPSESSID=lo1iiqguptkovh3iee2hugb46p'
'HTTP_CONNECTION' => 'keep-alive'
'HTTP_ACCEPT_ENCODING' => 'gzip, deflate'
'HTTP_ACCEPT_LANGUAGE' => 'en-US,en;q=0.5'
'HTTP_ACCEPT' => 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'
'HTTP_USER_AGENT' => 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0'
'HTTP_HOST' => 'localhost'
'REDIRECT_STATUS' => '200'
'SERVER_NAME' => 'localhost'
'SERVER_PORT' => '80'
'SERVER_ADDR' => '127.0.0.1'
'REMOTE_PORT' => '42196'
'REMOTE_ADDR' => '127.0.0.1'
'SERVER_SOFTWARE' => 'nginx/1.15.9'
'GATEWAY_INTERFACE' => 'CGI/1.1'
'REQUEST_SCHEME' => 'http'
'SERVER_PROTOCOL' => 'HTTP/1.1'
'DOCUMENT_ROOT' => '/var/www/project/frontend/web'
'DOCUMENT_URI' => '/index.php'
'REQUEST_URI' => '/ru/groups/black-list'
'SCRIPT_NAME' => '/index.php'
'CONTENT_LENGTH' => ''
'CONTENT_TYPE' => ''
'REQUEST_METHOD' => 'GET'
'QUERY_STRING' => ''
'SCRIPT_FILENAME' => '/var/www/project/frontend/web/index.php'
'FCGI_ROLE' => 'RESPONDER'
'PHP_SELF' => '/index.php'
'REQUEST_TIME_FLOAT' => 1563363298.7655
'REQUEST_TIME' => 1563363298
]
Код: Выделить всё
<?php
return [
...
'bsVersion' => '4.x',
'bsDependencyEnabled' => false,
];
Спасибо