我不知道发生了什么,我之前设置了mongodb
。然后刷新页面,突然出现错误通知
asking for namespace missing
无法在文件F:\ aplikasi \ laragon \ www \ yiiad \ application / modules / home / models / User.php中找到“ application \ modules \ home \ models \ User”。缺少命名空间?
我已经检查过我之前编写的代码,但仍然不知道我的错误所在
这是我的模型用户结构 \ application \ modules \ home \ models \ user
此模型\用户代码
<?php
namespace home\models;
use Yii;
use yii\behaviors\TimestampBehavior;
use yii\db\ActiveRecord;
use yii\db\Query;
use yii\web\IdentityInterface;
class User extends ActiveRecord implements IdentityInterface
{}
?>
我的别名
<?php
Yii::setAlias('@modules', dirname(dirname(__DIR__)) . '/application/modules');
我的路径设置
'basePath' => '@modules/home',
'modules' => [
'admin' => [
'class' => 'admin\Module'
],
'home' => [
'class' => 'home\Module'
],
],
我的模块
<?php
namespace home;
class Module extends \yii\base\Module{
public function init()
{
parent::init();
if (\Yii::$app instanceof \yii\console\Application) {
$this->controllerNamespace = 'home\controllers';
}
}
}
答案 0 :(得分:0)
命名空间home
不正确。您应该在模块的命名空间中使用modules
别名
namespace modules\home;
class Module extends \yii\base\Module
{
}
并在配置中
'modules' => [
'home' => [
'class' => 'modules\home\Module'
],
],
或者您必须为home
目录设置别名
'aliases' => [
'@home' => 'path to home directory'
],
'modules' => [
'home' => [
'class' => 'home\Module'
],
],