Capitulo 8 del Módulo 2 Panel de Administración

➜ Implementación CRUD Clientes

Implementación de la administración para clientes | Implementación para gestionar los usuarios con el rol cliente en nuestra aplicación Laravel 9

Implementación para gestionar los usuarios con el rol cliente en nuestra aplicación Laravel 9

Agregar ruta a web.php

....
Route::resource('user', App\Http\Controllers\Admin\UserController::class,["as"=>"admin"]);
....

 

UserController.php

<?php

namespace App\Http\Controllers\Admin;

use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use App\Models\User;

class UserController extends Controller
{
    public function index(){        
        $users = User::role('cliente')->get();
        return view("admin.user.index",compact("users"));
    }
    public function create(){
        return view('admin.user.create');
    }

    public function edit($id){
        $user = User::find($id);        
        return view('admin.user.edit',compact("user"));
    }

    public function store(Request $request){
        $user          =   new User($request->all());       
        $user->save();
        return redirect('admin/user');        
    }

    public function update(Request $request, $id){
        $user =User::findOrFail($id);
        $user->fill($request->all());
        $user->save();
        return redirect('admin/user');        
    }

    public function destroy($id){
        $user=User::findOrFail($id);
        $user->delete();
        return redirect('admin/user');
    }    
}

 

Vista index.blade.php

@extends('layouts.admin')
@section('content')
<div class="container">
    <div class="row justify-content-center">
        @include("admin.menu")
        <div class="col-sm-8">
            <h1 class="mt-3 mb-3 fs-4">SECCIÓN CLIENTE</h1>
            <a href="{{route("admin.user.create")}}" class="btn btn-success">CREAR USUARIO</a>
            <table class="table table-bordered mt-3">
                <tr>
                    <th>ID</th>
                    <th>NOMBRE</th>
                    <th>CELULAR</th>
                    <th>DIRECCIÓN</th>
                    <th>ACCIÓN</th>
                </tr>
                @forelse ($users as $c)
                <tr>
                    <td>{{$c->id}}</td>
                    <td>{{$c->name}}</td>
                    <td>{{$c->celular}}</td>
                    <td>{{$c->direccion}}</td>
                    <td>
                        <a href="{{route("admin.user.edit",$c->id)}}" class="btn btn-success">EDITAR USUARIO</a>
                    </td>
                </tr>
                @empty
                    <tr><td></td></tr>
                @endforelse
            </table>
        </div>
    </div>
</div>
@endsection

vista create.blade.php

@extends('layouts.admin')
@section('content')
<div class="container">
    <div class="row justify-content-center">
    @include("admin.menu")
        <div class="col-sm-8">
            {!! Form::open(['route'=>'admin.user.store','method'=>'POST']) !!}
            <div class="form-group row">                
                <div class="col-sm-6">
                    {!! Form::label('name','Nombre') !!}
                    {!! Form::text('name',null,['class'=>'form-control','required']) !!}
                </div>
                <div class="col-sm-6">
                    {!! Form::label('celular','Celular') !!}
                    {!! Form::text('celular',null,['class'=>'form-control']) !!}
                </div>
                <div class="col-sm-6">
                    {!! Form::label('direccion','direccion') !!}
                    {!! Form::text('direccion',null,['class'=>'form-control']) !!}
                </div>
            </div>            
            <div class="form-group mt-3">                
                <a href="javascript: history.go(-1)" class="btn btn-outline-primary">Regresar</a>

                {{ Form::submit('CREAR USUARIO',['class'=>'btn btn-success']) }}
            </div>

            {!! Form::close() !!}
        </div>
    </div>
</div>
@endsection

Vista edit.blade.php

@extends('layouts.admin')
@section('content')
<div class="container">
    <div class="row justify-content-center">
    @include("admin.menu")
        <div class="col-sm-8">
            {!! Form::open(['route'=>['admin.user.update',$user],'method'=>'PUT']) !!}
            <div class="form-group row">                
                <div class="col-sm-6">
                    {!! Form::label('nombre','Nombre') !!}
                    {!! Form::text('nombre',$user->name,['class'=>'form-control','required']) !!}
                </div>
                <div class="col-sm-6">
                    {!! Form::label('celular','Celular') !!}
                    {!! Form::text('celular',$user->celular,['class'=>'form-control','required']) !!}
                </div>
                <div class="col-sm-6">
                    {!! Form::label('direccion','Dirección') !!}
                    {!! Form::text('direccion',$user->direccion,['class'=>'form-control','required']) !!}
                </div>

            </div>
            <div class="form-group mt-3">
                <a href="javascript: history.go(-1)" class="btn btn-outline-primary">Regresar</a>
                {{ Form::submit('GUARDAR USUARIO',['class'=>'btn btn-success']) }}
            </div>
            {!! Form::close() !!}
        </div>
    </div>
</div>

 


1224 visitas

Descarga el código del proyecto

Descarga el código fuente del proyecto adquiriendo el curso completo

Comprar

¡Qué aprenderás?

tooltip bs-tooltip-top bs-tooltip-end bs-tooltip-bottom bs-tooltip-start show fade tooltip-inner

Codea Applications

México, Colombia, España, Venezuela, Argentina, Bolivia, Perú