我一直在阅读Laravel验证文档。我不清楚如何结合两个规则。

例如:

<input type="checkbox" name="has_login" value="1">

<input type="text" name="pin" value="">

如果选中has_login复选框,则需要输入文本pin值。

如果未勾选has_login,则不需要输入文本pin

Laravel验证:
public function rules()
{
    return [
          'has_login' => 'accepted',
          'pin' => 'required',
    ];
}

最佳答案

使用required_with或required_if

return [
      'has_login' => 'sometimes',
      'pin'       => 'required_with:has_login,on',
];
--
return [
      'has_login' => 'sometimes',
      'pin'       => 'required_if:has_login,on',
];
--
https://laravel.com/docs/5.2/validation
--
另外,如果未选中has_login复选框,则不会作为表单提交的一部分发送

10-07 19:24
查看更多