Create a request validation file
PHP artisan make:request articlesrequest request created successfully.
The contents of the file are as follows:
app/http/requests/articlesrequest.php<? phpnamespace app\http\requests;use App\http\requests\request;class Articlesrequest extends request{ /** * Determine if the user is authorized to make this Request. * * @return BOOL * /Public Function authorize () { return true; This is the administrative permission, temporarily set to True, all permissions are available } /** * Get The validation rules that apply to the request. * * @return Array * /Public Function rules () { return [ ' title ' = ' Required ', Here is the specified validation of the project, and the validation of the rules, in an array of ways to write ' content ' = ' required ' ; }}
Validation rules Reference official website: https://laravel.com/docs/5.2/validation
Modify the controller's Store method
App/http/requests/articlesrequest.phpuse app\http\requests\articlesrequest;//public function store (Request $ Requests) {Public function store (articlesrequest $requests) {//Here is an instance of the articlesrequest you just created articles:: Create ($requests->all ()); Return redirect ('/articles '); }
Because the validation is now added, the request for entry to the store method is filtered, but the direct filter does not know the success or failure, so add an extra hint
Resources/views/articles/create.blade.php@extends (' Layout.app ') @section (' content ')Create an article
{!! Form::open ([' url ' = '/articles/store ')]!
{!! Form::label (' title ', ' title: ')!! {!! Form::text (' title ', null, [' class ' = ' Form-control '])!
{!! Form::label (' content ', ' content: ')!! {!! Form::textarea (' content ', NULL, [' class ' = ' Form-control '])!
{!! Form::label (' Publish_at ', ' publish_at: ')!! {!! Form::d ate (' publish_at ', date (' y-m-d '), [' class ' = ' Form-control '])! {!! Form::submit (' published article ', [' class ' = ' btn btn-primary form-control '])! {!! Form::close ()!!} @if ($errors->any ())//Add here, $errors variable is provided by Laravel, which is the variable that captures these errors and is an array
@foreach ($errors->all () as $error)//So a loop variable array is required to get the final error message
- {{$error}}
@endforeach
@endif @stop
It should be noted that in Laravel 5.2, $errors variables need to be in the middleware web to exist, if not, Laravel will error, Undefined variable:errors.
Normally, an error pop-up prompt that triggers a validation rule is displayed in the Web page, for example
The title field is required. The content field is required.
Rewrite the error message, for example, to the Chinese hint, you need to rewrite the messages method in the request file, the file is not in the default, so we need to add
app/http/requests/articlesrequest.php Public function messages () { return [ ' title.required ' =] ' This title is required! ',//For example this will match the title required rule and then trigger your hint ' body.required ' = ' This body is a must! ', ' ; }