是否有更改模块的命名空间并将其用作模型的命名空间?
我正在使用yii2的基本应用模板构建项目。
我想要的是拥有一个集中式命名空间,这样当我将模块用于不同的项目并重用其中的模型(基本或高级模板)时,我不必根据其根目录更改命名空间。目录
答案 0 :(得分:1)
这可以使用Yii2别名。
首先将所有模型放在自定义文件夹中,并将其设置为别名yii配置文件。如下所示
// an alias of a file path
Yii::setAlias('@myFolder', '/path/to/foo');
最后,根据此别名一次更新所有模型名称空间。如下。
namespace myFolder\models\xxx;
现在您可以将此文件夹复制到任何yii2应用程序,只需设置别名,如上所述。
注意: - 目录将是独立的,如下所示,名称空间将基于此目录。
folderName
->models
->xxxxx
->xxxxx
.....
// and namespace should add all the models like below
namespace folderName\models;
// while using these models, you can import like below
import myFolder\xxxxxx;
答案 1 :(得分:0)
您可以编辑composer.json文件找到
{
.....
"autoload": {
"psr-4": {
"App\\": "src/" #<-key=namespace value=dirname
}
}
......
}
运行composer update