2017-06-16 14 views
1

Ich verwende Laravel 5.3 und ich versuche, mit max Länge innerhalb der Anfrage Klasse wie ...Laravel 5.3 benutzerdefinierte Validierung Nachrichten Array

<?php 

namespace App\Http\Requests; 
use Illuminate\Foundation\Http\FormRequest; 

class UpdateRecordRequest extends FormRequest 
{ 
    public function authorize() 
    { 
     return true; 
    } 

    public function rules() 
    { 
     $rules = [ 
      'field_1' => 'string|max:100', 
      'field_2' => 'string|max:100', 
      'field_3' => 'string|max:100', 
      ]; 

     return $rules; 
    } 

    public function messages() 
    { 
     return [ 
      '*.max' => ['string' => 'Insert some value.'] 
     ]; 
    } 

}

Aber eine benutzerdefinierte Nachricht für jede Zeichenfolge zu setzen Wenn ich das Formular absende, erscheint ein Fehler, der "ErrorException in MessageBag.php line 245:" und die View-Datei sagt, wenn die Fehler angezeigt werden müssen.

Hier ist die Ansicht ...

<div class="form-group {{ $errors->has('field_1') ? 'has-error' : '' }}"> 
     <label for="">Field 1</label> 
     {{ Form::text('field_1', $record->field_1, ['class' => 'form-control']) }} 
     <span class="help-block">{{ $errors->first('field_1') }}</span> 
    </div> 

    <div class="form-group {{ $errors->has('field_2') ? 'has-error' : '' }}"> 
     <label for="">Field 2</label> 
     {{ Form::text('field_2', $record->field_2, ['class' => 'form-control']) }} 
     <span class="help-block">{{ $errors->first('field_2') }}</span> 
    </div> 

    <div class="form-group {{ $errors->has('field_3') ? 'has-error' : '' }}"> 
     <label for="">Field 3</label> 
     {{ Form::text('field_3', $record->field_1, ['class' => 'form-control']) }} 
     <span class="help-block">{{ $errors->first('field_3') }}</span> 
    </div> 

Ich bin mir nicht sicher, ob der Fehler in der Anfrage-Klasse im Moment zu erklären, die Nachrichten oder ist, wenn in der Ansicht ist, wie kann ich zeigen, dass benutzerdefinierte Nachricht?

+0

https://laravel.io/forum/05-13-2014-lost-with-messagebag-and-validation-errors anzuzeigen –

Antwort

0

Sie können benutzerdefinierte Fehlermeldung wie

public function messages() 
{ 
    return [ 
     'max' => 'Insert some value.', 
    ]; 
} 
Verwandte Themen