我的观点是这样的:
{!! Form::open(['url' => 'product/store','class'=>'form-horizontal') !!}
...
<div class="form-group">
<label for="description" class="col-sm-3 control-label">Description</label>
<div class="col-sm-9">
{!! Form::textarea('description', null, ['class' => 'form-control', 'rows'=>5]) !!}
</div>
</div>
...
{!! Form::close() !!}
我的控制器是这样的:
use App\Http\Requests\CreateProductRequest;
public function store(CreateProductRequest $request)
{
dd($request->all());
}
我的要求是这样的:
<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class CreateProductRequest extends FormRequest {
public function authorize() {
return true;
}
public function rules() {
return [
'description'=>'required'
];
}
}
如果未填写说明并单击“提交”按钮,则不会保存该说明,它将返回到表单。返回表单时,我想显示一条消息,说明应该填写
我创建了一个html来显示如下消息:
<div class="alert alert alert-danger" role="alert">
Description is required
</div>
如果没有填写说明,我怎样才能调用html标签?
答案 0 :(得分:1)
用于显示我通常使用的单个消息:
@if($errors->has('description'))
<label class="text-danger text-small">{{$errors->first('description')}}</label>
@endif
有关详细信息,请查看https://laravel.com/docs/5.4/validation#quick-displaying-the-validation-errors
答案 1 :(得分:0)
您的所有验证错误都存储在$errors
变量中。您可以使用$ error varibable访问它们。但必须使用has()
方法检查错误消息是否存在
@if($errors->has('description'))
<label class="text-danger text-small">{{$errors->first('description')}}</label>
@endif