Laravel表单错误消息

时间:2016-02-23 09:06:35

标签: php forms laravel

我为自己创建了一个表单,它工作得很完美。我做了一些规则:如果用户没有在表单中写任何东西或者写得不够,请给我一些错误信息。这是在使用'前'包而不是通常使用的'形式'包时使用。现在我将表单从“Former”改为“Form”,现在我的错误信息已经消失了......好吧我的表单也适用了。如果我没有在我的表单中写任何内容,或者标题/内容部分中没有至少3个字符,那么它应该重定向我所需的错误。这有效,但没有错误消息。

这是我的表格:

@extends('master')
@section('content')
{!! Form::open(array('action' => 'Test\\TestController@store')) !!}
<div class="form-group">
    {!! Form::label('thread', 'Title:') !!}
    {!! Form::text('thread', null, ['class' => 'form-control']) !!}
</div>

<div class="form-group">
    {!! Form::label('content', 'Body:') !!}
    {!! Form::textarea('content', null, ['class' => 'form-control']) !!}
</div>

<div class="form-group">
    {!! Form::submit('Add Thread', ['class' => 'btn btn-primary form-control']) !!}
</div>
{!! Form::close() !!}
@stop

我的Controller @ store功能:

public function store(StoreRequest $request){
        Thread::create($request->all());
        return redirect(action('Test\\TestController@index'));
    }

我的模特:

<?php
namespace App\Models\Thread;

use Illuminate\Database\Eloquent\Model;

class Thread extends Model {
    public $table = 'thread';
    public $fillable = [
        'thread',
        'content',
    ];
}

现在规则(StoreRequest.php):

 <?php
namespace App\Http\Requests\Store;


use App\Http\Requests\Request;

class StoreRequest extends Request {

    public function rules() {
        return [
            'thread' => 'required|min:3',
            'content' => 'required|min:3'
        ];
    }

    public function authorize() {
        return true;
    }

}

自动生成错误消息。 Laravel为我做了那件事。但不是了。

有人知道为什么吗?

1 个答案:

答案 0 :(得分:0)

您可以检查表单是否在这些行中返回任何错误:

.ForMember(q => q, option => option.MapFrom(q => q.Product))

或者你可以使用BootForm并让它为你处理一切