我在当前项目中使用存储库模式。当我尝试访问路由时,出现此错误
ReflectionException
Class RepositoriesUserRepository does not exist
我的文件夹结构是这样的
- Respositories
-- UserRepository
在我的控制器中,我正在做
use RepositoriesUserRepository;
class UsersController extends ApiController {
protected $user;
public function __construct(UserRepository $user)
{
$this->user = $user;
}
在用户存储库中
<?php namespace Repositories
class UserRepository {
我在作曲家中自动加载
"psr-0": {
"Respositories": "app/"
}
我的命名空间是否正确?我无法弄清楚为什么它找不到类。
1) 定义命名空间时不要使用带前缀的反斜杠。
// No
<?php namespace Repositories;
// Yes
<?php namespace Repositories;
2) 检查拼写。在您的 composer.json 文件中,您有 Respositories 而不是 Repository。
也许你的 laravel 没有加载你的仓库,如果是这样,只需运行这个
command composer dumpautoload
如果部署服务器上发生这种情况,请阅读有关此错误的文章 http://www.tagipuru.xyz/2016/07/09/repository-class-does-not-exist-in-laravel/