使用了表单请求类后,如何使用 sometimes 复杂条件验证?
面对更复杂的验证情境中,你可以创建一个「表单请求」来处理更为复杂的逻辑。表单请求是包含验证逻辑的自定义请求类。
面对复杂的验证情景,我使用了表单请求,但是这个表单请求似乎并不能支持“复杂的情况啊”
下面文档里介绍的功能:
假设我们有一个专为游戏收藏家所设计的网页应用程序。
如果游戏收藏家收藏超过一百款游戏,我们会希望他们来说明下为什么他们会拥有这么多游戏。
比如说他们有可能经营了一家游戏分销商店,或者只是为了享受收集的乐趣。
为了在特定条件下加入此验证需求,可以在 Validator 实例中使用 sometimes 方法。
$v = Validator::make($data, [
'email' => 'required|email',
'games' => 'required|numeric',
]);
$v->sometimes('reason', 'required|max:500', function ($input) {
return $input->games >= 100;
});
如果我已经用了表单请求类,那么哪来的Validator实例给我写复杂规则呢?
请问这个你怎么解决的
@tftree 没解决,不过这只是看文档的时候想到的问题,暂时还没遇到。实在不行就不用FormRequest了呗,不过还是希望能有个答案。
两种方式:
第一种,创建一个$validator
$this->validator = $validator;
第二种,使用withValidator方法
public function withValidator($validator)
{
}