关于框架注入 user 的问题?

通过路由
Route::get('/users/{user}/edit', 'UsersController@edit')->name('users.edit');
跳转到修改资料页面,这里的{user}应该是用户的id,但是到了控制器里处理,代码如下:

    public function edit(User $user)
    {
        return view('users.edit', compact('user'));
    }

这里的$user变量并不是id,而是一个App\Models\User的对象,这是依赖框架的注入?如何注入的呢?

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

$user是一个 User 对象实例

确实使用了依赖注入 ,但是依赖注入是 Laravle 的容器帮你完成的,详情请看

服务容器《Laravel 5.6 中文文档》

5年前 评论
ibucoin

这个的概念是隐式路由模型绑定,如果你没有前面的User或者不叫$user的话,出来的还会是id的。

5年前 评论

谢谢回答,今天又看了一遍,也注意到这一点了,先跟着走一遍记录问题不去深究,回头第二遍我再研究吧

5年前 评论

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