Laravel中的numeric_if验证器

时间:2016-05-26 10:09:07

标签: validation laravel

我有一个这样的自定义请求:

  public function rules()
  {
    return [
       'adminFee' => "required_if:useAdminFee,1",

......但我需要这样的东西:

  'adminFee' => "required_if:useAdminFee,1|numeric_if:useAdminFee,1"

看起来这并不是开箱即用的吗?如果是这样的话,那么我获得此功能的最快方式是什么?

1 个答案:

答案 0 :(得分:0)

我建议您使用Conditionally adding rules。 在你的情况下,只需覆盖FormRequest类中的getValidatorInstance方法,如下所示:

protected function getValidatorInstance()
{
    $v = parent::getValidatorInstance();
    $v->sometimes('adminFee', 'required|numeric', function($input) {
        return $input->useAdminFee == 1;
    });
    return $v;
}

并从adminFee方法

中删除rules的验证规则