模型绑定时控制器方法传参中必须包含对应的 Eloquent 模型类型声明,并且是有序的如何理解?

在『隐性路由模型绑定』时
file
这句话中的有序如何理解? 是指第一个参数必须为 User 模型的注入吗?如果把 Illuminate\Http\Request 请求放在第一个参数的位置是不是就会报错?

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

我这样试了不会报错..
还是依赖注入的时候 User 的注入变量为了好理解需要命名为 $user,如果还有其他的模型注入,也要类似这样命名呢?

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 4

file
此有序应该是指路由上参数的顺序和控制器方法上参数的顺序

7年前 评论

@sunnylin
我试了,路由的参数是 {user},但是我控制器方法上的参数顺序改为

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

Request 请求在前也是可以的.不知道这里是不是推荐做法把路由上参数的顺序和控制器方法上参数的顺序设为一致.

7年前 评论

个人认为,Request 请求的顺序不影响,其他路由上参数的顺序和控制器方法上参数的顺序才会影响。你可以多加几个参数来尝试一下

7年前 评论

应该是指控制器里面对应函数的参数顺序,要和uri中的参数顺序保持一直

5年前 评论

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