Laravel 在表单提交前显示错误信息

Laravel is displaying error message before form submit

在我的最后一个问题中,我寻求的帮助是在错误填写表单后显示单个错误消息,而不是每次输入错误时都显示错误。他们非常乐于助人,我收到了这段代码:

          @if ($errors)
              <span class='help-block'>
                  <strong>{{ "There are errors" }}</strong>
              </span>
          @endif

第二个答案是

 @if (!empty($errors))
 <span class='help-block'>
     <strong>{{ "Some input field is not properly filled" }}</strong>
 </span>
 @endif

我以为只有提交表单后才会显示上面的内容,如果Laravel会发现任何错误。问题是它总是显示如下屏幕截图中的错误消息: 有谁知道解决方案?非常感谢。

所以如果我没理解错的话,你只想在提交表单后显示成功或错误消息。

如果是这种情况,以下应该有效:

您需要在控制器功能中添加/更改以下内容:

$request->session()->flash('success', 'Success!');
return redirect()->route("yourstuff.index");

在你的 blade.php 你 return 与它的会话中这样的消息

    @if (session('success'))
        <div class="alert alert-success">
            {{ session('success') }}
        </div>
    @endif

    @if (session('error'))
        <div class="alert alert-success">
            {{ session('error') }}
        </div>
    @endif

$errors 变量总是被设置。这是一个 message bag,可能包含也可能不包含消息。

您可以这样检查:

 @if ($errors->count() > 0)
 <span class='help-block'>
     <strong>{{ "Some input field is not properly filled" }}</strong>
 </span>
 @endif

@if (!$errors->isEmpty()) 应该也可以。

问题已解决,我收到了两个很好的答案,但我选择了一个更简单的答案。 为了 return 单个错误,我使用了用户建议的代码:

devk

    @if ($errors->count() > 0)
 <span class='help-block'>
     <strong>{{ "Some input field is not properly filled" }}</strong>
 </span>
    @endif

和作品great.I要感谢用户:

utdev

对于此代码:

您需要在控制器功能中添加/更改以下内容:

$request->session()->flash('success', 'Success!');
return redirect()->route("yourstuff.index");

在你的 blade.php 中你 return 与它的会话是这样的消息

@if (session('success'))
    <div class="alert alert-success">
        {{ session('success') }}
    </div>
@endif

@if (session('error'))
    <div class="alert alert-success">
        {{ session('error') }}
    </div>
@endif

我将在我项目的其他部分使用您提供的代码。 谢谢!