【问题标题】:Laravel array validation dont show error messageLaravel 数组验证不显示错误信息
【发布时间】:2019-11-11 23:41:11
【问题描述】:

首先我可以说,搜索后我没有找到任何解决方案。我做这个帖子的验证数组:laravel validation array

我需要验证每个大小数组的位置。我写了这个验证码:

   // Fields validation
    $request->validate([
        'name' => 'required|max:150',
        'theySay' => 'nullable|array',
        'theySay.*' => 'string|max:1000',
        'theyDontSay' => 'nullable|array',
        'theyDontSay.*' => 'string|max:1000',
    ]

其中 theySay 和 theyDontSay 都是字符串数组。在迁移中,我有两个字段(文本),比如 1000 个字符的字符串。

        $table->string('text', 1000);

验证工作正常。我的意思是,如果输入的文本超过 1000 个字符,我将无法保存,但..不要显示任何错误消息。

我希望错误消息像其他字段一样显示在输入中。

我做错了什么?

最好的问候

【问题讨论】:

    标签: php arrays string laravel validation


    【解决方案1】:

    请在您的刀片文件中输入以下代码以显示任何错误消息。

    @if ($errors->any())
        <div class="alert alert-danger">
            <ul>
                @foreach ($errors->all() as $error)
                    <li>{{ $error }}</li>
                @endforeach
            </ul>
        </div>
    @endif
    

    【讨论】:

    • 这不能回答问题
    【解决方案2】:
    'YOUR_FIELD' => '...|...|max:1000| ...'
    

    查看 Laravel 验证 docs 了解更多信息

    【讨论】:

    • 如果您看到我的问题,我的代码严格遵循文档中编写的 laravel 验证规则。你可以在这里看到它:laravel.com/docs/5.8/validation#validating-arrays。我的问题不是那个
    • 问题在于响应。错误未显示
    • 您的视图代码中有错误块吗?您编写它吗?
    • 显示控制台中的任何错误。如果我输入一个字符串 1000 验证工作,我无法保存该元素。但不会出现错误。我更新了我的问题
    • 您的视图文件中有以下代码吗? ` @foreach ($errors->all() as $error) {!! $errors->first() !!} @endforeach `
    猜你喜欢
    • 2018-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-28
    • 2021-02-26
    • 1970-01-01
    • 1970-01-01
    • 2017-01-06
    相关资源
    最近更新 更多