【发布时间】:2015-10-08 04:40:23
【问题描述】:
在 Laravel 5.1 的 Routing 文档中,它似乎没有说明如何获取 URL 参数并将其传递给类。那么我们应该如何从 URL 中获取路由参数呢?
例如,使用 RESTful Resource Controller 更新用户的个人资料,您的应用 PATCHes(实际上是 POST)到:
/profile/10
那么当在 UpdateUserRequest 的 rules() 方法中时,你如何从 URL 中获取 id 10 来验证用户的电子邮件在其他用户中是唯一的吗?
public fnction rules()
{
return [ 'email' => 'uniqie:users,email,'.$id ]
}
如果 i dd(Request::all()),它不包含 'id' = '10'。 请帮忙。谢谢!
更新
在Form Request Validation doc 中,它说 Laravel 授予您访问路由/URL 参数的权限:
$this->route('id');
但它只适用于非资源路由,例如:
Route::post('users/{id}', 'UsersController@store');
它不适用于:
Route::resource('users', 'UserController');
那么如何从资源路由中获取和传递路由参数呢?
【问题讨论】:
标签: validation laravel-5 url-parameters