【发布时间】:2018-12-18 14:29:42
【问题描述】:
我正在使用 codeception,并且正在尝试为测试数据库运行迁移。
我从测试文件夹中运行命令
php codeception/bin/yii migrate/up --interactive=0
但我得到了错误
Exception 'yii\base\InvalidConfigException' with message 'The configuration for the "user" component must contain a "class" element.'
in /www/shopboxyii-v2/vendor/yiisoft/yii2/di/ServiceLocator.php:205
Stack trace:
#0 /www/shopboxyii-v2/vendor/yiisoft/yii2/di/ServiceLocator.php(261): yii\di\ServiceLocator->set('user', Array)
#1 /www/shopboxyii-v2/vendor/yiisoft/yii2/base/Component.php(180): yii\di\ServiceLocator->setComponents(Array)
#2 /www/shopboxyii-v2/vendor/yiisoft/yii2/BaseYii.php(546): yii\base\Component->__set('components', Array)
#3 /www/shopboxyii-v2/vendor/yiisoft/yii2/base/BaseObject.php(107): yii\BaseYii::configure(Object(yii\console\Application), Array)
#4 /www/shopboxyii-v2/vendor/yiisoft/yii2/base/Application.php(206): yii\base\BaseObject->__construct(Array)
#5 /www/shopboxyii-v2/vendor/yiisoft/yii2/console/Application.php(89): yii\base\Application->__construct(Array)
#6 /www/shopboxyii-v2/tests/codeception/bin/yii(25): yii\console\Application->__construct(Array)
#7 {main}
有谁知道这个错误或导致它的原因??
【问题讨论】:
-
您在控制台配置文件中对
user的配置是什么? -
为什么在
console.php或console/config/main.php文件中定义了user组件?如果我没记错的话,你就不需要它了。 -
你说的都是对的。我检查了我的 yii 文件,在那里我可以找到为用户配置的配置文件。我删除了这部分,一切正常。你们中的任何人都可以回答吗,我会为可能面临同样问题的人标记它是正确的。非常感谢您的解决方案:D
标签: yii yii2 codeception