【问题标题】:How to display SPECIFIC laravel validation error in view, not all of them如何在视图中显示特定的 laravel 验证错误,而不是全部
【发布时间】:2017-08-25 22:45:08
【问题描述】:

我遇到的问题是我的出生日期字段有多个验证规则。

        @if($errors->has('dob'))
            <span id="helpBlock" class="help-block error">
                @foreach($errors->get('dob') as $message) 
                    {{ $message }}
                @endforeach
            </span>
            <script>$('#dob').addClass('formError');</script>
        @endif

这将打印出所有错误。

如果它被触发,我只想打印出“必需”验证规则,我正在前端处理其他验证。

【问题讨论】:

  • 这并不能真正回答您的问题,但您可能不应该只依赖前端验证。

标签: javascript php laravel validation view


【解决方案1】:

不久前我也遇到过同样的问题。您只能通过其公共方法 $errors->all()、$errors->get()、$errors->first() 等访问错误消息包。前两个方法返回消息的数字数组。因此,无法按验证名称进行过滤。因此,最好的办法是根据您的验证规则了解消息的顺序。因此,例如,如果“必需”是为该字段定义的第二条规则,您可以使用它的索引来访问它。像这样。

@if($errors->has('dob'))
        <span id="helpBlock" class="help-block error">
                {{ $errors->get('dob')[1] }}
        </span>
        <script>$('#dob').addClass('formError');</script>
    @endif

抱歉英语不好。希望你能理解。祝你有美好的一天。

【讨论】:

    【解决方案2】:

    删除foreach并执行

    {{ $errors->first('dob') }}
    

    【讨论】:

    • 您能确定“必填”规则会排在第一位吗?
    • 如果需要,需要的第一个规则将是第一个。
    猜你喜欢
    • 2020-05-01
    • 1970-01-01
    • 2013-02-20
    • 1970-01-01
    • 2019-06-15
    • 2020-05-06
    • 2016-06-28
    • 2018-12-05
    • 1970-01-01
    相关资源
    最近更新 更多