【发布时间】:2014-07-17 06:36:04
【问题描述】:
我正在尝试将我的所有用户代码移动到它自己的包中,以便在多个项目中使用,一切正常,除了当我尝试登录时,我收到以下错误:
Class '\User' not found
现在,我假设这是因为由于某种原因它没有找到用户模型(我使用的是 Laravel 附带的默认模型,但只是移到了
'Vendor/VendorName/PackageName/src/models'
我可以看到我可以从 app/config/auth.php 引用用户模型,但如果我将其更改为我的包命名空间,我会看到相同的错误,但路径不同,而且,我不认为这是最好的方法,因为我需要为每个项目设置 app/config/auth.php 模型,这可能会很痛苦,尤其是当我忘记事情的时候!
【问题讨论】:
-
错误信息中类名的开头真的有“\”吗?这看起来......可疑。
-
是的,我很确定这是标准配置,因为 config/auth.php 文件只是“用户”,所以看起来 Laravel 正在添加 /
-
这意味着它正在全局命名空间中寻找
User。您需要添加适当的use声明 -
正如我提到的 / 是由 Laravel 添加的,我认为。我应该把这个使用声明放在哪里?我已经在我的 UserController 中尝试过,但这不起作用。
-
如果你把它移到 'Vendor/VendorName/PackageName/src/' 你必须确保作曲家注册它来自动加载,显示你的作曲家文件
标签: php laravel laravel-4 composer-php