我习惯于使用 Laravel,但在基于 Laravel 10 并使用 PHPstorm 作为我的 ide 的新项目中对命名空间有点困惑。
在
composer.json
文件中,默认自动加载已设置为:
"autoload": {
"psr-4": {
"App\\": "app/",
"Database\\Factories\\": "database/factories/",
"Database\\Seeders\\": "database/seeders/"
}
},
"autoload-dev": {
"psr-4": {
"Tests\\": "tests/"
}
},
在我的用户模型中,我的 IDE 抛出了命名空间不正确的错误。命名空间是用户模型的默认命名空间:
namespace App\Models;
IDE建议
Namespace name doesn't match the PSR-0/PSR-4 project structure
并建议将班级从当前位置app/App/Models
移至
app/Models
所以-这就是我感到困惑的地方。我假设 PSR 自动加载有效地将
App
的根设置为 app
的根文件夹 - 这是正确的吗?
我已经完成了 composer dump autoload 但 IDE 错误仍然出现 - 该应用程序似乎正在运行所以这是 PHPStorm 设置问题吗?
回顾一个较早的 Laravel 项目,应用程序的 PSR4 条目没有特色。
如何解决并确保命名空间正确? (或更改 IDE 中的设置)
谢谢