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")]); } }