jueves, 15 de junio de 2017

Validaciones en Laravel (APIs)

Estructura básica con Validator (puede ir en un controlador):
Route::post('/validate', function(Request $request){
    $validator = Validator::make($request->all(), [
        'name' => 'required|min:10|regex:/^[a-zA-Z]*$/',
         //required             -> valor obligatorio
         //min:10               -> mínimo 10 caracteres
         //regex:/^[a-zA-Z]*$/' -> (expresión regular) que empiece, termine y contenga solo letras
    ]);

    
    if($validator->fails()){ //si el validador falla, devuelve el error y no se ejecuta el resto del código
        return response()->json([
            "errors"=>$validator->errors(),
        ]);
    }

   //Se ejecuta el resto del código (inserciones, modificaciones, etc.)

    return response()->json([ //si los datos son correctos, se ejecuta el código devolviendo información
        "valid"=>true,
        "data"=> ...
    ]);

Si se usa Validate en vez de Validator, esde la parte front-end se deben enviar dos headers:
Content-Type: application/json
X-Requested-With: XMLHttpRequest
https://www.youtube.com/watch?v=9Jf0Etr8CEE&index=10&t=9m10s&list=PL55RiY5tL51rrgq6xi67Mc6cwOHXw_nB1

Responses (Validate)
https://desarrolloweb.com/articulos/validacion-reutilizable-request-laravel5.html

Reglas de validación disponibles:
https://laravel.com/docs/validation#available-validation-rules

Expresiones regulares en php:
http://php.net/manual/en/function.preg-match.php#105924
https://www.tutorialspoint.com/php/php_regular_expression.htm

-
https://laravel.com/docs/5.4/validation#manually-creating-validators
https://desarrolloweb.com/articulos/validaciones-con-laravel5.html
https://laracasts.com/discuss/channels/general-discussion/how-to-return-error-code-of-validation-fields-in-rest-api


Néstor Mercedes

Author & Editor

Has laoreet percipitur ad. Vide interesset in mei, no his legimus verterem. Et nostrum imperdiet appellantur usu, mnesarchum referrentur id vim.

0 comentarios:

Publicar un comentario