10 Panel de Administración 03 – Taller de desarrollo de una Tienda en Línea

Hola, bienvenido(a), al Post 10 del Taller de Desarrollo de una Tienda en línea con Bootstrap, Laravel 5.1 y la API de Paypal.

Seguimos desarrollando el Panel de Administración de nuestra tienda en línea.

Hoy vamos a crear el CRUD para nuestros usuarios, por lo que necesitamos:

Crear nuestro controlador, esto lo hacemos desde la línea de comandos:

Ahora registramos el controller en nuestro router:

Hacemos una inyección de dependencias para trabajar de forma mas adecuado los métodos de nuestro controlador:

READ

Para crear el Read de nuestro CRUD, en el método index de nuestro controller obtenemos los usuarios, ordenados por nombre de forma ascendente y de 5 en 5 (para realizar la paginación), se los pasamos a la vista index:

Creamos en la carpeta admin dentro de views una carpeta llamada user y dentro el archivo index.blade.php, en la que mostraremos una tabla con todos nuestros usuarios:

Con esto nuestra vista index se vera así:

crud_users_thumb

 

CREATE

Ahora para implementar nuestro Create del CRUD, en el método create de nuestro controller mostramos la vista create:

Creamos la vista create dentro de la carpeta user y en ella el código del formulario de creación de un  nuevo usuario:

Probamos en el navegador y nuestro formulario se verá así:

user_form_create

La información del formulario se enviará al método store de nuestro controller, este método hará uso de un Request, que crearemos así:

En este archivo pondremos las reglas de validación:

Incluimos el SaveUserRequest en nuestro controller y ya lo podemos utilizar en nuestro método store, en donde se validará y se almacenará el nuevo usuario en la base de datos:

UPDATE

Ahora para implementar el Update del CRUD, en el método edit de nuestro controller llamamos a la vista edit y le pasamos el objeto $user:

Creamos la vista edit dentro de la carpeta user y en ella el código del formulario de edición de usuario:

Probamos en el navegador y nuestro formulario se verá así:

user_form_edit

La información del formulario se enviará al método update de nuestro controller, en donde se validará y se actualizará la información del usuario en la base de datos:

DELETE

Por ultimo para implementar el Delete del CRUD, en el index de nuestro crud modificamos el código del botón eliminar para que quede de la siguiente forma:

Y el método destroy de nuestro controller quedará así:

De esta forma quedará finalizado el crud para nuestros usuarios.

Todos los detalles y mas los puedes ver en el vídeo de la clase:

En el siguiente post desarrollaremos el crud para nuestros pedidos y usaremos un poco de ajax mediante jquery.

Eso es todo para este post, compártelo por favor.

Espero tus comentarios y nos vemos en el siguiente 🙂

  • Roberto Figuera Espinoza

    Compañero genial va quedando te lo agradezco mucho faltan cuantos tutos para terminar y vas a hacer un deploy de la aplicación? es que increíblemente he tratado de subir proyectos y nunca he podido en laravel 5, si lo vas a hacer lo podrías hacer en openshift ?

    • Hola Roberto, faltan pocos posts, trataré de hacer uno del deploy y tomare en cuenta tu sugerencia, saludos!

      • Roberto Figuera Espinoza

        Bien bien!!

  • Linda Mejia Laura

    oye OVED estaria muy bien que hicieras el DEPLOY please

    saludos

    • Hola Laura, esta en mis planes, espero tener el tiempo suficiente para hacerlo.

      • Linda Mejia Laura

        ok gracias

  • Kym Kim ER

    hola .. todo va bien para este video numero 10 ————-pero ya cuando voy a crear un usuario nuevo (despues de poner los datos,)
    name, ‘last_name ‘email’
    ‘user’ password’, ‘type’
    ‘active’ ‘address’

    datos… en el formulario y darle click en= guardar.==…………… me sale el siguiente error:
    ==============================================
    QueryException in Connection.php line 636:SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicata du champ ” pour la clef ‘users_user_unique’ (SQL: insert into users (name, email, password, updated_at, created_at) values (NOMBRE_kim, kim@lopez.com, 123456, 2015-08-26 15:50:47, 2015-08-26 15:50:47))

    =============================================

    SABEN : : : Es como si solo me dejara tener SOLOOO dos usuarios (el de OVDFS y el de Adela) QUE VENIAN integrados desde un inicio ….si intento agregar uno mas me da el error que puse

    ALGUIEN AYUUDE PLEASE DONDE ESTA EL ERROR????

    • Hola Kym, el error que te aparece es porque se esta violando una restricción, lo que veo es que en la consulta que se genera no se esta recibiendo un valor para el campo user, revisa tu formulario para ver si se esta enviando ese valor, revisa también tu archivo de migración y el modelo para que te des cuenta bien que campos debe tener tu formulario y que campos tienes agregados en la propiedad $fillable. Saludos!!!

    • Ronald

      Kym Kim ER, me aparecía el mismo error y siguiendo la indicación de Ovedfs en corroborar los campos en la propiedad $fillable del archivo App/User.php se guardó correctamente.

      Yo lo dejé así y funcionó:

      protected $fillable = [

      ‘name’, ‘last_name’, ‘email’, ‘user’, ‘password’, ‘type’, ‘active’, ‘address’

      ];

  • Edward

    Excelentes tutoriales Ovedfs, no llevo el mismo proyecto pero estoy trabajando con un sistema de inventario de productos y he utilizado la misma logica, mas que agradecido y me siento comprometido con la colaboracion que haces.

    • Hola Edward, gracias por seguir el taller, me da gusto que te sea de utilidad, saludos!

  • Steven

    Que buen video Ovedfs, muy claro todo, solo una preguntica, ese campo en la tabla users que se llama remember_token para que sirve y prque a editarlos usuarios me lom pone null?.

    Gracias

    • Steven

      me puedes ayudar con eso del remember token..gracias