2016-04-02 6 views
0

In meiner Laravel App habe ich eine Validierung eines Formulars in einem Controller unter Verwendung der Anforderungsvariablen durchgeführt. Die Validierung scheint zu funktionieren, aber wenn ich versuche, die Fehler in der Ansicht anzuzeigen, werden sie nicht angezeigt. Ich weiß, dass die Validierung funktioniert, denn sobald ich etwas eintippe, das keine ganze Zahl ist, bringt es mich zurück zur Ansicht mit dem Formular. Hier ist die Ansicht, mit der Form: (Die ‚if‘ Anweisung, die errorr zeigt nicht funktioniert):Fehler beim Anzeigen nicht angezeigt. Laravel-5

@if(count($errors) > 0) 
    <ul> 
     @foreach ($errors->all() as $error) 
      <li>{{ $error }}</li> 
     @endforeach 
    </ul> 
@endif 
<form method='POST' action='/lorem/show'> 



<label>Enter Number of Paragraphs</label> 
<input type='hidden' name='_token' value='{{ csrf_token() }}'> 
<input type='text' 
     id='paragraph' 
     name='paragraph' 
     maxlength="2" 
     size="5" 
     <br/> 

<input type="checkbox" name="header" value="header"/>Include Headers<br/><br/> 
<button type="submit" class="btn btn-primary"> 
&nbsp;Create </button> 
</form> 

Und hier ist die Funktion in meinem Controller:

public function postShow (Request $request) { 

    $this->validate ($request, [ 
    'paragraph' => 'required|integer', 
]); 
} 

Warum sind die Fehler nicht in der Sicht auftauchen?

+1

Ist Ihre Route innerhalb der Routengruppe mit der Middleware "web"? Wenn nicht, das kann das Problem sein – RDev

Antwort

0

UPDATE:

Aktualisieren Sie die postShow sein:

$this->validate($request->all(), [ 
    'paragraph' => 'required|integer', 
]); 

heißt Sie das $request->all() habe fehlt.

Ändern der if Anweisung:

@if($errors->first()) 
    <ul> 
    @foreach ($errors->all() as $error) 
     <li>{{ $error }}</li> 
    @endforeach 
    </ul> 
@endif 

Wenn das nicht funktioniert, stellen Sie sicher, dass Sie tatsächlich Fehlermeldungen zu der Ansicht werden immer wieder aus Ihrer Sicht die folgenden irgendwo durch Zugabe:

{{ dd($errors) }} 
+0

Ich versuchte, die 'if' zu ändern, aber es hat nicht funktioniert. Wenn ich 'hinzugefügt {{dd ($ fehler)}}' folgendes auftauchten: 'ViewErrorBag {# 167 ▼ #bags [] }' Es ist nicht noch –

+0

arbeiten, das heißt, dass Sie Validierungen ist nicht tatsächlich irgendwelche Fehler werfen, weshalb Sie die Nachricht nicht angezeigt sehen. –

+0

Haben Sie irgendeine Lösung dafür gefunden, bekomme ich denselben Fehler? –