Inicio » Cursos » App para Pizzería con delivery

Curso App para Pizzería con delivery

Capitulo 8 ➜ Implementación CRUD Clientes

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>

 


442 visitas

Sigue con el curso: Capítulo 9 – Diseño de la Portada con productos

Descarga el código del proyecto

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

Descargar ahora

Más cursos que pueden interesarte

Más cursos

Codea Codea App

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

© Todos los derechos reservados Codea App | ...de frente al código!!! | 2020 - 2023