按照此处列出的步骤设置高级应用程序。使用yii migrate
时出现以下错误。
Yii Migration Tool (based on Yii v2.0.2)
Exception 'yiibaseInvalidConfigException' with message 'Unknown component ID: db'
in /home/randall_l_smith_2_gmail_com/ngcOne/vendor/yiisoft/yii2/di/ServiceLocator.php:136
Stack trace:
#0 /home/randall_l_smith_2_gmail_com/ngcOne/vendor/yiisoft/yii2/console/controllers/MigrateController.php(96): yii
diServiceLocator->get('db')
#1 /home/randall_l_smith_2_gmail_com/ngcOne/vendor/yiisoft/yii2/base/Controller.php(149): yiiconsolecontrollersM
igrateController->beforeAction(Object(yiibaseInlineAction))
#2 /home/randall_l_smith_2_gmail_com/ngcOne/vendor/yiisoft/yii2/console/Controller.php(91): yiibaseController->ru
nAction('', Array)
#3 /home/randall_l_smith_2_gmail_com/ngcOne/vendor/yiisoft/yii2/base/Module.php(455): yiiconsoleController->runAc
tion('', Array)
#4 /home/randall_l_smith_2_gmail_com/ngcOne/vendor/yiisoft/yii2/console/Application.php(161): yiibaseModule->runA
ction('migrate', Array)
#5 /home/randall_l_smith_2_gmail_com/ngcOne/vendor/yiisoft/yii2/console/Application.php(137): yiiconsoleApplicati
on->runAction('migrate', Array)
#6 /home/randall_l_smith_2_gmail_com/ngcOne/vendor/yiisoft/yii2/base/Application.php(375): yiiconsoleApplication-
>handleRequest(Object(yiiconsoleRequest))
#7 /home/randall_l_smith_2_gmail_com/ngcOne/vendor/yiisoft/yii2/yii(41): yiibaseApplication->run()
#8 {main}
这是我的配置文件
<?php
return [
'components' => [
'db' => [
'class' => 'yiidbConnection',
'dsn' => 'mysql:host=127.0.0.1;port=3306;dbname=ngcOne',
'username' => 'root',
'password' => '############',
'charset' => 'utf8',
],
'mailer' => [
'class' => 'yiiswiftmailerMailer',
'viewPath' => '@common/mail',
// send all mails to a file by default. You have to set
// 'useFileTransport' to false and configure a transport
// for the mailer to send real emails.
'useFileTransport' => true,
],
],
];
MySQL似乎运行正常(使用远程导航器连接,基于Web的phpmyadmin没有问题)。这一切都是在 LEMP 堆栈上设置的。
任何人都对如何处理此错误有任何见解?
就我而言,我使用单击在Google Cloud平台中部署LEMP堆栈。
按照此处的说明进行操作,它并没有完全按照书面形式工作。
我会修改顺序以使其更有意义。
安装编辑器
curl -s http://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
安装应用程序模板
composer global require "fxp/composer-asset-plugin:1.0.0-beta4"
composer create-project --prefer-dist yiisoft/yii2-app-advanced yii-application
使用最适合情况的方法创建数据库
修改环境(开发或生产)以指向您的数据库(通用、控制台和前端)-这里的关键要点是不要忘记控制台配置。
在应用程序目录中运行php init
,并根据需要选择开发或生产。配置文件将从指定的环境复制。
根据需要为应用程序设置文档根目录 /frontend/www
和/backend/www