【问题标题】:Validate 2 fields should be the same value without one of them has _confirmation in its name in laravel 5验证 2 个字段应该是相同的值,但其中一个字段在 laravel 5 中的名称中没有 _confirmation
【发布时间】:2015-08-15 14:17:08
【问题描述】:

我有借记字段和借记字段

 <input type="text" class="form-control" name="debit" value="{{ isset($expense->debit) ? $expense->debit : old('debit')}}"> 

 <input type="text" class="form-control" name="credit" value="{{ isset($expense->credit) ? $expense->credit: old('credit')}}"> 

我需要确保提交表单时值相等。

我知道我可以这样命名它们:

debit 和 debit_confirmation 以及在规则数组中

return Validator::make($data, [
        'debit' => 'required|confirmed',
    ]);

但我不想更改他们的名字。

laravel 5 中的任何内置验证都可以做到这一点。

【问题讨论】:

标签: php laravel laravel-4 laravel-5


【解决方案1】:

您可以使用same 验证规则来匹配您想要的字段。

return Validator::make($data, [
    'debit' => 'required|same:credit',
]);

您可以查看laravel documentation 以了解有关验证规则的更多信息

【讨论】:

    【解决方案2】:

    Laravel 提供的众多验证器中,有一个您正在寻找:same。为了验证 2 个不同字段 (field1, field2) 的值是否匹配,您需要定义以下规则

     $rules = [
      'field1' => 'same:field2'
    ];
    

    您可以在此处查看所有可用验证规则的列表:http://laravel.com/docs/5.1/validation#available-validation-rules

    【讨论】:

      猜你喜欢
      • 2016-03-11
      • 2020-04-29
      • 1970-01-01
      • 2018-09-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-18
      • 1970-01-01
      相关资源
      最近更新 更多