微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

显示刀片中除选定错误之外的所有错误

如何解决显示刀片中除选定错误之外的所有错误

当我想在验证后显示刀片中的所有错误时,我使用这段代码

@foreach ($errors->all() as $error)
     <li>{{ $error }}</li>
@endforeach

但是如果我想显示除少数选定的错误之外的所有错误怎么办。 IE。我想消除来自名为 email ($error->has('email')) 的输入的所有错误。有没有可能在laravel中以一种聪明的方式做到这一点?

解决方法

因为 $errors 是 Laravel 集合。阅读有关收藏集的更多信息 here

我们可以试试except()`:

$erros= $errors->except(['email']);

现在

$errors->all() 

将返回没有 email 的新集合。

快乐编码。

,

我认为您可以使用以下代码访问 errorBag。

if ($errors->getBag('default')->has('email'))

我认为你也可以在你的 foreach 中获取错误键

@foreach($errors->all() as $key => $error)
    @if($key === 'email')
        @continue
    @endif
    <li>{{ $error }}</li>
@endforeach
,

我想出了解决方案。 $errors 是一种 MessageBag,我使用了集合中的方法。

@php
    $errors = collect($errors->getMessages())->except(['email']);
@endphp
@foreach ($errors->flatten()->all() as $error)
    <li>{{ $error }}</li>
@endforeach

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。