现在,我可以使用以下方法检查刀片中存在验证错误的字段:
@if($errors->has('field_name'))
<div class="help-block">
Lorem Ipsum
</div>
@endif
在我的控制器中,我使用的是not_in规则:
"field_name" => "required|string|not_in:
我想知道,我可以更改if语句以仅检查not_in规则吗?
示例:
@if($errors->has('field_name.not_in'))
答案 0 :(得分:0)
@if($errors->has('field_name') and $errors->first('field_name') == 'The selected field_name is invalid.')
this is just for not in validation for special input.
@endif
答案 1 :(得分:0)
您可以使用Laravel的自定义错误消息执行此操作。
$messages = [
'field.required' => 'required',
'field.string' => 'string',
'field.not_in' => 'not_in',
];
然后通过以下操作;
if($errors->has('field')){
foreach($errors->get('field') as $error) {
if($error == "not_in") {
// do something
}
}
}
这是一个非常混乱的解决方案,但我似乎无法找到Laravel为更漂亮的解决方案提供的任何东西。我想问题是你为什么要这样做?可能有一种方法可以提供更优雅的解决方案,而不是使用错误包。