Laravel 中的 psr-4 自动加载问题
psr-4 autoloading issue in Laravel
可能这个问题之前已经回答过好几次了。我正在尝试通过 Laravel.
中的作曲家 运行 自动加载器
我在 运行 宁 composer dump-autoload
时收到此错误
Class App\Admin located in C:/xampp/htdocs/test/app\Models\Admin.php does not comply with psr-4 autoloading standard. Skipping.
我检查了文件系统中的大小写,我觉得没问题。
Composer 版本是最新的 2.0.14。
Composer.json--
"autoload": {
"psr-4": {
"App\": "app/"
},
"classmap": [
"database/seeds",
"database/factories"
]
},
文件夹结构为:
<root_project>
app
Models
Admin.php
.....
config
public
...
app/Models/Admin.php
:
namespace App;
use ....
use ....
class Admin extends Authenticatable implements HasMedia
{
......
非常感谢任何帮助。
您的模型中的命名空间错误,您缺少 Model
的子命名空间并且只有供应商命名空间,在 Laravel 框架中设置为 App
, 指向 app
文件夹作为其基础。
更改您的 Admin
模型命名空间以包含子命名空间将解决您的问题。
namespace App\Models;
class Admin {}
这是因为 PSR-4 不依赖于文件路径,子命名空间是到达目的地 class 的目录,并且这些目录必须与子命名空间的大小写相匹配。 class 名称也是如此,文件必须与 class 的文件匹配,例如。
IF 您的基本目录是 /src
,链接到供应商命名空间 Mitra,一个 class /src
的根文件夹将只有命名空间 Mitra
。 IF 您在根目录下有一个文件夹; /src/Models
然后 命名空间将是 Mitra\Models
.
PSR-4 的 specification 是一个相当简短的规范,并且有很好的文档记录,如果您在理解方面有困难,我建议您阅读它。
可能这个问题之前已经回答过好几次了。我正在尝试通过 Laravel.
中的作曲家 运行 自动加载器我在 运行 宁 composer dump-autoload
Class App\Admin located in C:/xampp/htdocs/test/app\Models\Admin.php does not comply with psr-4 autoloading standard. Skipping.
我检查了文件系统中的大小写,我觉得没问题。
Composer 版本是最新的 2.0.14。
Composer.json--
"autoload": {
"psr-4": {
"App\": "app/"
},
"classmap": [
"database/seeds",
"database/factories"
]
},
文件夹结构为:
<root_project>
app
Models
Admin.php
.....
config
public
...
app/Models/Admin.php
:
namespace App;
use ....
use ....
class Admin extends Authenticatable implements HasMedia
{
......
非常感谢任何帮助。
您的模型中的命名空间错误,您缺少 Model
的子命名空间并且只有供应商命名空间,在 Laravel 框架中设置为 App
, 指向 app
文件夹作为其基础。
更改您的 Admin
模型命名空间以包含子命名空间将解决您的问题。
namespace App\Models;
class Admin {}
这是因为 PSR-4 不依赖于文件路径,子命名空间是到达目的地 class 的目录,并且这些目录必须与子命名空间的大小写相匹配。 class 名称也是如此,文件必须与 class 的文件匹配,例如。
IF 您的基本目录是 /src
,链接到供应商命名空间 Mitra,一个 class /src
的根文件夹将只有命名空间 Mitra
。 IF 您在根目录下有一个文件夹; /src/Models
然后 命名空间将是 Mitra\Models
.
PSR-4 的 specification 是一个相当简短的规范,并且有很好的文档记录,如果您在理解方面有困难,我建议您阅读它。