要在输入字段后显示验证错误,我使用:
<div class="form-group">
{!! Html::decode(Form::label('first_name','First Name:<span class="required">*</span>',['class'=>'control-label col-sm-3'])) !!}
<div class="col-sm-6">
{!! Form::text('first_name',null,['class'=>'form-control']) !!}
@if ($errors->has('first_name'))
<span class="help-block">
<strong>{{ $errors->first('first_name') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group">
{!! Html::decode(Form::label('last_name','Last Name:<span class="required">*</span>',['class'=>'control-label col-sm-3'])) !!}
<div class="col-sm-6">
{!! Form::text('last_name',null,['class'=>'form-control']) !!}
@if ($errors->has('last_name'))
<span class="help-block">
<strong>{{ $errors->first('last_name') }}</strong>
</span>
@endif
</div>
</div>
// and so on......
此代码完美运行。但是我必须在每个输入框中编写几乎相同的代码。所以,我打算做一个全局函数来显示错误。为了实现这一点,我做了以下事情。
- 创建
helpers.php
内部app
文件夹 编写以下代码:
function isError($name){ if($errors->has($name)){ return '<span class="help-block"><strong>'.$errors->first($name).'</strong></span>'; } }
跑
composer dump-autoload
以这种方式在刀片文件中使用它:
<div class="form-group"> {!! Html::decode(Form::label('first_name','First Name:<span class="required">*</span>',['class'=>'control-label col-sm-3'])) !!} <div class="col-sm-6"> {!! Form::text('first_name',null,['class'=>'form-control']) !!} {{ isError('first_name') }} </div> </div> <div class="form-group"> {!! Html::decode(Form::label('last_name','Last Name:<span class="required">*</span>',['class'=>'control-label col-sm-3'])) !!} <div class="col-sm-6"> {!! Form::text('last_name',null,['class'=>'form-control']) !!} {{ isError('last_name') }} </div> </div>
现在,当我去create.blade.php
我有一个错误
未定义变量:错误(查看:D:\xampp\htdocs\hms\resources\views\guest\create.blade.php)
我知道问题出在helpers.php
因为我没有定义$errors
,我只是从刀片文件中粘贴该代码。