Php Laravel 5-验证多个请求
在Laravel 5中,是否可以验证多个请求,以便在表单提交后插入相关模型?Php Laravel 5-验证多个请求,php,validation,request,laravel-5,Php,Validation,Request,Laravel 5,在Laravel 5中,是否可以验证多个请求,以便在表单提交后插入相关模型? 我知道如何使用验证器来验证多个模型,但我想用Request类来验证 拉维4: 拉威尔5: 请求一个 class CreateUserRequest extends Request { public function rules() { // } } 请求两个 class CreateRoleRequest extends Request { public funct
我知道如何使用验证器来验证多个模型,但我想用Request类来验证 拉维4: 拉威尔5: 请求一个
class CreateUserRequest extends Request {
public function rules()
{
//
}
}
请求两个
class CreateRoleRequest extends Request {
public function rules()
{
//
}
}
控制器型号调用:
public function store(CreateUserRequest $request, CreateRoleRequest $request2)
{
//
}
如何使用请求方法验证用户输入值和角色输入值?
(如果验证失败,有一个特定的反馈)首先,使用多个表单请求类可以很好地工作
当然,你不能一次就有两种形式。但是,要分隔数据,可以使用字段名的数组语法:
<input type="text" name="user[name]" />
<!-- and later -->
<input type="text" name="role[name]" />
要创建这两个模型,只需使用它来获取用户
和角色
的所有属性:
$request->input('user'); // returns an array like ['name' => 'foo', 'other-user-field' => 'bar']
$request->input('role'); // returns an array like ['name' => 'baz', 'other-role-field' => 'boom']
我当然知道。正如我所尊敬的,它根本不起作用。我认为我们不能使用2请求作为参数。每个输入字段都附加到第一个请求参数。不工作意味着只验证一个请求?准确地说。我想我可以在一个请求中验证所有内容,但我想通过分离验证以更简洁的方式来完成。我刚刚尝试过,它实际上与类型暗示两个请求类一起工作。(调用了两个
validate()
方法)。我想在你的真实代码中,你没有CreateUserRequest
和UserRequest
差异?哦,是的,抱歉刚刚编辑过。我能看看你是怎么管理一切的吗?比如表单中有什么,请求中有什么,控制器中有什么。一个有效的例子,或者我不知道。您的请求如何知道需要检查哪些输入以及没有检查哪些输入?谢谢,我如何更改lang/en/validation.php
中属性中显示的名称。当名称只是user
时,我可以添加'name'=>'name',
,但对于数组,我不知道该怎么做<代码>'role.name'=>'name'不起作用,我相信您可以添加一个嵌套数组。所以是'role'=>['name'=>'name']
做的。还有一个问题。当我在公共函数规则(MyRequest$request,SecondRequest$request){…}中进行验证时
是否可以同时触发两个请求?现在,如果验证没有同时传递两个请求,我只会得到第一个请求的错误:MyRequest
,而SecondRequest
只会在MyRequest
传递之后触发。@dbr我认为这是不可能的。如果你需要更多的帮助,请问一个新问题。
public function rules(){
return [
'role.name' => 'required'
];
}
$request->input('user'); // returns an array like ['name' => 'foo', 'other-user-field' => 'bar']
$request->input('role'); // returns an array like ['name' => 'baz', 'other-role-field' => 'boom']