模型绑定(V5.0.1

路由规则和分组支持绑定模型数据,例如:

Route::rule('hello/:id','index/index/hello','GET',[	'ext'					=>	'html',	'bind_model'	=>	[    	'user'	=>	'\app\index\model\User',
    ],
]);

会自动给当前路由绑定 id为 当前路由变量值的User模型数据。

可以定义模型数据的查询条件,例如:

Route::rule('hello/:name/:id','index/index/hello','GET',[	'ext'					=>	'html',	'bind_model'	=>	[    	'user'	=>	['\app\index\model\User','id&name']
    ],
]);

表示查询idname的值等于当前路由变量的模型数据。

也可以使用闭包来返回模型对象数据

Route::rule('hello/:id','index/index/hello','GET',[	'ext'					=>	'html',	'bind_model'	=>	[    	'user'	=>	function($param){
        	$model = new \app\index\model\User;        	return $model->where($param)->find();
        }
    ],
]);

闭包函数的参数就是当前请求的URL变量信息。

在控制器中可以通过下面的代码或者使用依赖注入获取:

request()->user;

绑定的模型可以直接在控制器的架构方法或者操作方法中自动注入,具体可以参考请求章节的依赖注入。


 小秋同学  路由  2021-03-24 09:32:10    收藏:  赞(505)
学习吧_一个不错的学习网站
本文地址:https://www.qiuhai.com/doc/1582.html 复制链接 如果还有疑问,欢迎加入我们的QQ交流群:887790 加入Q群 易优最新程序下载: 点击下载
QQ在线咨询