綁定模型
模型綁定(V5.0.1
)
路由規(guī)則和分組支持綁定模型數(shù)據(jù),例如:
Route::rule('hello/:id','index/index/hello','GET',[
'ext' => 'html',
'bind_model' => [
'user' => '\app\index\model\User',
],
]);
會自動給當(dāng)前路由綁定 id
為 當(dāng)前路由變量值的User
模型數(shù)據(jù)。
可以定義模型數(shù)據(jù)的查詢條件,例如:
Route::rule('hello/:name/:id','index/index/hello','GET',[
'ext' => 'html',
'bind_model' => [
'user' => ['\app\index\model\User','id&name']
],
]);
表示查詢id
和name
的值等于當(dāng)前路由變量的模型數(shù)據(jù)。
也可以使用閉包來返回模型對象數(shù)據(jù)
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();
}
],
]);
閉包函數(shù)的參數(shù)就是當(dāng)前請求的URL變量信息。
在控制器中可以通過下面的代碼或者使用依賴注入獲?。?/p>
request()->user;
綁定的模型可以直接在控制器的架構(gòu)方法或者操作方法中自動注入,具體可以參考請求章節(jié)的依賴注入。
文檔最后更新時間:2018-04-25 19:35:41
未解決你的問題?請到「問答社區(qū)」反饋你遇到的問題