如何在laravel中显示所需的消息?

时间:2017-06-20 22:36:37

标签: laravel request laravel-5.3 rules required-field

我的观点是这样的:

{!! 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标签?

2 个答案:

答案 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