使用 Laravel 5 (dev / master) 是否可以让 laravel 自动加载带有 id 的 DI Eloquent 模型?类似于 Symfony 2 注释的东西。
class MyController {
public function show($id, MyModel $model) {
// I'm hoping $model->id == $id if it exists
}
}
是的,它被称为Route Model Binding。
在您的RouteServiceProvider::before
方法中,用于$router->model
设置它:
public function before(Router $router, UrlGenerator $url) {
$router->model('user', 'User');
}
然后,只要您有一个名为 的参数user
,它就会自动替换为 的实例User
。