对于 Auth::user ()->avatar 和 $user->avatar 的异同????

教程中有的地方写Auth::user()->avatar,有的是$user->avatar,我试了一下两者都能有结果,不知道有什么区别,但是经过我的仔细观察,我发现用在模板里的都是Auth::user()->avatar,继承的都是后者,请问除了这个还有什么区别么?

求教。O(∩_∩)O谢谢

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
最佳答案

但是经过我的仔细观察,我发现用在模板里的都是Auth::user()->avatar,继承的都是后者


然而并不是这样,你可能只是刚好看到在模板中用到 Auth::user() 比较多,但这并不表示 Auth::user() 只用在模板而 $user 只用在继承页面中。


Auth::user() 是当前登录用户的模型,$user 是任意绑定ID的用户,$user 可以是当前登录的用户,也可以是其他的用户,取决于你在实例化这个对象时给它传入的ID。你之所以在模板页面中看到只有 Auth::user() ,可能是因为你的模板是导航栏,而导航栏当然是显示当前登录的用户。

6年前 评论
讨论数量: 5

auth()->user()->avatar 是用於取得「目前登入中」的用戶
而教程裡的人$user 則是取得 「被路由顯示綁定」的用戶模型

綜合以上
若是在模板裡要顯示「我的」頭貼,使用 Auth()->user() 就可以取到結果
但要查看「別人的」頭貼,則需由 Controller 決定傳遞哪個模型,自然就得用 $user

6年前 评论

@leochien 你说得对,但是我说的问题好像不是 问那个,但还是感谢你的回答

6年前 评论

但是经过我的仔细观察,我发现用在模板里的都是Auth::user()->avatar,继承的都是后者


然而并不是这样,你可能只是刚好看到在模板中用到 Auth::user() 比较多,但这并不表示 Auth::user() 只用在模板而 $user 只用在继承页面中。


Auth::user() 是当前登录用户的模型,$user 是任意绑定ID的用户,$user 可以是当前登录的用户,也可以是其他的用户,取决于你在实例化这个对象时给它传入的ID。你之所以在模板页面中看到只有 Auth::user() ,可能是因为你的模板是导航栏,而导航栏当然是显示当前登录的用户。

6年前 评论

@yowfung 相较于其他的回答,你的回答很清楚我很满意

6年前 评论

一个是你自己的头像,一个是你访问用户的头像

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!