2016-04-15 20 views
0
ein

Ich habe eine Laravel-API, die ich für eine eckige App verwende. Wenn ich will ein Formular Anfrage senden es gibt mir normalerweise eine Liste der Fehlermeldungen, aber ich möchte ein Array wie erhalten:Geben Sie eine Bestätigungsmeldung mit Schlüssel zurück und geben Sie

{ 
    'username': [ 
    'required' 
    ], 
    'password': [ 
    'required', 
    'min' 
    ] 
} 

Ich möchte auch alles in der Anfrage Klasse zu handhaben und nicht in der Steuerung.

Ich weiß, ich habe die

formatErrors(Validator $validator) 

Funktion aber das Validator-Objekt enthält nur die Fehlermeldungen zu überschreiben.

Antwort

1

Sie können actualy Validator :: verwenden für das nicht gelang, etwa so:

$validator = \Validator::make($request->all(), [ 
     'name' => 'required', 
     'email' => 'required|email', 
    ]); 

    if ($validator->fails()) { 
     return response()->json(($validator->failed()); 
    } 

Das gibt so etwas wie:

{"name":{"Required":[]},"email":{"Required":[]}} 

eine Verwendung Illuminate\Foundation\Http\FormRequest (das ist die eigentliche Frage war, Entschuldigung)

Sie können formatErrors verwenden, um die failed() Antwort zurückzugeben:

protected function formatErrors(Validator $validator) 
{ 
    return $validator->failed(); 
} 
+0

Ich möchte den Validator in der Anfrage-Klasse verwenden, nicht in der Steuerung – mimo

+0

Können Sie mir/uns ein Stück Code liefern in Bezug auf, wie Sie Anfragen jetzt umgehen? Würde 'geschützte Funktion formatValidationErrors (\ Validator $ validator) {return $ validator-> failed(); } 'Arbeit? –

+1

Sorry das ist 'geschützte Funktion formatErrors (Validator $ validator) {return $ validator-> failed(); } ' –

Verwandte Themen