コード例 #1
0
 public function create(Request $request)
 {
     //Obtiene toda la data enviada para crear el nuevo repositorio
     $data = $request->all();
     //Tranforma el nombre del repositorio a minusculas
     $data['nombre'] = strtolower($data['nombre']);
     //Mensajes de error para las validaciones
     $menssages = ['nombre.required' => 'El campo nombre es requerido', 'nombre.alpha' => 'El nombre solo puede contener letras', 'nombre.min' => 'El nombre debe ser de almenos 4 caracteres', 'nombre.max' => 'El nombre debe ser menor a 60 caracteres', 'nombre.unique' => 'El nombre del repositorio ya existe', 'descripcion.required' => 'El campo descripcion es requerido'];
     //Valida cada compo listado con cada regla listada
     $validator = Validator::make($data, ['nombre' => 'required|alpha|min:4|max:60|unique:repositorios,nombre', 'descripcion' => 'required'], $menssages);
     //Comprueba si hay algun error
     if ($validator->fails()) {
         //Si los datos no pasaron la validacion regresa el primer error encontrado
         return Response()->json(['status' => 'danger', 'menssage' => $validator->errors()->first()]);
     } else {
         //Si los datos pasaron las validaciones crea el repositorio y regresa el mensaje de exito
         Repositorios::create(['nombre' => $data['nombre'], 'descripcion' => $data['descripcion'], 'autor' => $request->user()->email]);
         return Response()->json(['status' => 'success', 'menssage' => 'Se ha creado el repositorio ' . $request->input("nombre")]);
     }
 }