表单错误消息未显示Laravel 5

时间:2017-04-28 14:46:55

标签: php laravel laravel-5

我是Laravel的新手,我想使用Laravel中包含的身份验证系统。 为此,我使用

激活了laravel projet中的身份验证
php artisant make:auth

然后我尝试登录我的projet和everthing工作,但是当我提交空表单时,不会显示“需要电子邮件字段”等错误消息。

以下是我在login.blade.php中自动实现的错误测试示例:

<div class="form-group{{ $errors->has('email') ? ' has-error' : '' }}">
          <div class="col-md-12">
              <input id="email" type="email" class="form-control" placeholder="{{ trans('validation.attributes.email') }}" name="email" value="{{ old('email') }}" required autofocus>

              @if ($errors->has('email'))
                  <span class="help-block">
                      <strong>{{ $errors->first('email') }}</strong>
                  </span>
              @endif
          </div>
</div>

请注意,当我输入错误的电子邮件/密码组合时,错误消息会正确显示,但对于任何其他情况,页面甚至都不会刷新。

感谢您的帮助......

1 个答案:

答案 0 :(得分:0)

您需要输入电子邮件字段。您的浏览器可能因此没有提交请求。如果从电子邮件输入中删除“require”属性,则应显示错误。

<div class="form-group{{ $errors->has('email') ? ' has-error' : '' }}">
      <div class="col-md-12">
          <input id="email" type="email" class="form-control" placeholder="{{ trans('validation.attributes.email') }}" name="email" value="{{ old('email') }}" autofocus>

          @if ($errors->has('email'))
              <span class="help-block">
                  <strong>{{ $errors->first('email') }}</strong>
              </span>
          @endif
      </div>

此外,您可以使用此代码在发生时显示“所有”错误:

@if (count($errors) > 0)
    <div class="alert alert-danger">
        <strong>Whoops!</strong><br><br>
        <ul>
            @foreach ($errors->all() as $error)
                <li>{{ $error }}</li>
            @endforeach
        </ul>
    </div>
@endif