validaciones
This commit is contained in:
parent
0b45dd67a5
commit
9d9b6c5be9
Binary file not shown.
|
|
@ -35,7 +35,7 @@ class CategoriasController extends Controller
|
||||||
public function destroy(Request $request, $id){
|
public function destroy(Request $request, $id){
|
||||||
$categorias = Categorias::findOrfail($id);
|
$categorias = Categorias::findOrfail($id);
|
||||||
$categorias->delete();
|
$categorias->delete();
|
||||||
$request->session()->flash('mensaje-success', 'La categoría fue eliminada.');
|
$request->session()->flash('mensaje-success', 'La categoría fue eliminada.');
|
||||||
return redirect('/categorias');
|
return redirect('/categorias');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -47,23 +47,29 @@ class CategoriasController extends Controller
|
||||||
public function store(Request $request){
|
public function store(Request $request){
|
||||||
|
|
||||||
$request->validate([
|
$request->validate([
|
||||||
'descripcion' => 'required|max:20|',
|
'descripcion' => 'required|max:20',
|
||||||
'nombre' => 'required|unique:categorias,nombre',
|
'nombre' => 'required|unique:categorias,nombre|regex:/^[a-zA-ZáéíóúñÁÉÍÓÚ]+( [a-zA-ZáéíóúñÁÉÍÓÚ]+)*$/|max:20',
|
||||||
],
|
//'dni' => 'required|numeric|digits_between:7,8',
|
||||||
|
],
|
||||||
[
|
[
|
||||||
'descripcion.required' => 'el campo descripcion debe ser requerido',
|
'descripcion.required' => 'el campo descripcion debe ser requerido',
|
||||||
'descripcion.max' => 'el campo descripcion debe contener maximo 10 caracteres',
|
'descripcion.max' => 'el campo descripcion debe contener maximo 20 caracteres',
|
||||||
'nombre.required' => 'el campo nombre es requerido',
|
'nombre.required' => 'el campo nombre es requerido',
|
||||||
'nombre.unique' => 'ya existe una categoria con ese nombre'
|
'nombre.unique' => 'el campo nombre no se puede repetir',
|
||||||
|
'nombre.regex' => 'el campo nombre solo debe contener letras',
|
||||||
|
'nombre.max' => 'el campo nombre debe contener un maximo de 20 caracteres',
|
||||||
|
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
$categorias = new Categorias();
|
$categorias = new Categorias();
|
||||||
$categorias->fill([
|
$categorias->fill([
|
||||||
'nombre' => $request->input('nombre'),
|
'nombre' => $request->input('nombre'),
|
||||||
'descripcion' => $request->input('descripcion'),
|
'descripcion' => $request->input('descripcion'),
|
||||||
]);
|
]);
|
||||||
$categorias->save();
|
$categorias->save();
|
||||||
|
$request->session()->flash('mensaje-success', 'La categoría fue agregada.');
|
||||||
return redirect('/categorias');
|
return redirect('/categorias');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -80,6 +86,7 @@ class CategoriasController extends Controller
|
||||||
'descripcion' => $request->input('descripcion'),
|
'descripcion' => $request->input('descripcion'),
|
||||||
]);
|
]);
|
||||||
$categorias->update();
|
$categorias->update();
|
||||||
|
$request->session()->flash('mensaje-success', 'La categoría fue modificada.');
|
||||||
return redirect('/categorias');
|
return redirect('/categorias');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -90,35 +97,5 @@ class CategoriasController extends Controller
|
||||||
return redirect('/categorias');
|
return redirect('/categorias');
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public function show($id){
|
|
||||||
$categorias = Categorias::findOrfail($id);
|
|
||||||
|
|
||||||
return view('categorias.show', ["cat"=>$categorias]);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function edit($id){
|
|
||||||
$categorias = Categorias::findOrfail($id);
|
|
||||||
return view('categorias.edit', ["cat"=>$categorias]);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function update(Request $request, $id){
|
|
||||||
$categorias = Categorias::findOrfail($id);
|
|
||||||
$categorias->fill([
|
|
||||||
'nombre' => $request->input('nombre'),
|
|
||||||
'descripcion' => $request->input('descripcion'),
|
|
||||||
]);
|
|
||||||
$categorias->update();
|
|
||||||
return redirect('/categorias');
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
28
app/Http/Requests/StoreCategoriaRequest.php
Normal file
28
app/Http/Requests/StoreCategoriaRequest.php
Normal file
|
|
@ -0,0 +1,28 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Requests;
|
||||||
|
|
||||||
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
|
|
||||||
|
class StoreCategoriaRequest extends FormRequest
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Determine if the user is authorized to make this request.
|
||||||
|
*/
|
||||||
|
public function authorize(): bool
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the validation rules that apply to the request.
|
||||||
|
*
|
||||||
|
* @return array<string, \Illuminate\Contracts\Validation\ValidationRule|array<mixed>|string>
|
||||||
|
*/
|
||||||
|
public function rules(): array
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
//
|
||||||
|
];
|
||||||
|
}
|
||||||
|
}
|
||||||
40
app/Http/Requests/UpdatedCategoriaRequest.php
Normal file
40
app/Http/Requests/UpdatedCategoriaRequest.php
Normal file
|
|
@ -0,0 +1,40 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Requests;
|
||||||
|
|
||||||
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
|
|
||||||
|
class UpdatedCategoriaRequest extends FormRequest
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Determine if the user is authorized to make this request.
|
||||||
|
*/
|
||||||
|
public function authorize(): bool
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the validation rules that apply to the request.
|
||||||
|
*
|
||||||
|
* @return array<string, \Illuminate\Contracts\Validation\ValidationRule|array<mixed>|string>
|
||||||
|
*/
|
||||||
|
public function rules(): array
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
'nombre' => 'required|regex:/^[a-zA-ZáéíóúñÁÉÍÓÚ]+( [a-zA-ZáéíóúñÁÉÍÓÚ]+)*$/|max:20|unique:categorias,nombre,' . $this->route('categoria') . ',id_categoria',
|
||||||
|
'descripcion' => 'required'
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
public function messages() {
|
||||||
|
|
||||||
|
return [
|
||||||
|
'nombre.required' => 'el campo nombre es requerido',
|
||||||
|
'nombre.regex' => 'el campo nombre solo debe contener letras',
|
||||||
|
'nombre.max' => 'el campo nombre debe contener un maximo de 20 caracteres',
|
||||||
|
'nombre.unique' => 'ya existe una categoria con este nombre',
|
||||||
|
'descripcion' => 'el campo descripcion es requerido'
|
||||||
|
];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -33,7 +33,12 @@
|
||||||
<!-- form-check-label => clase de Bootstrap que estiliza etiquetas de formulario -->
|
<!-- form-check-label => clase de Bootstrap que estiliza etiquetas de formulario -->
|
||||||
<label for="nombre" class="form-check-label">Nombre (*)</label>
|
<label for="nombre" class="form-check-label">Nombre (*)</label>
|
||||||
<!-- form-control => aplica estilos consistentes al input-->
|
<!-- form-control => aplica estilos consistentes al input-->
|
||||||
<input type="text" name="nombre" id="nombre" value="{{old('nombre')}}" required class="form-control" >
|
<input type="text"
|
||||||
|
name="nombre"
|
||||||
|
id="nombre"
|
||||||
|
value="{{ old('nombre') }}"
|
||||||
|
required
|
||||||
|
class="form-control">
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-group col-md-3">
|
<div class="form-group col-md-3">
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@
|
||||||
<!-- navbar-light => estilo de texto oscuro sobre fondo claro -->
|
<!-- navbar-light => estilo de texto oscuro sobre fondo claro -->
|
||||||
<!-- bg-light => fondo gris claro -->
|
<!-- bg-light => fondo gris claro -->
|
||||||
|
|
||||||
<nav class="navbar navbar-expand-lg bg-light">
|
<nav class="navbar navbar-expand-lg navbar-light bg-light">
|
||||||
|
|
||||||
<!-- Nombre de la aplicación -->
|
<!-- Nombre de la aplicación -->
|
||||||
<a class="navbar-brand" href="{{ url('/') }}">
|
<a class="navbar-brand" href="{{ url('/') }}">
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user