Creación de un paquete con Composer y PHPUnit

En lecciones anteriores hemos venido desarrollando desde cero un contenedor de inyección de dependencias en PHP, ahora en esta tercera parte del curso Crea componentes para PHP y Laravel aprenderás a publicar un componente o paquete de PHP en Packagist.

Para esta primera lección prepararemos un nuevo proyecto que contendrá el contenedor que hemos desarrollado, extrayendo las clases referidas a él de nuestro mini proyecto.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Sobrecarga en PHP extendiendo la clase Laravel Collection

Cuando trabajamos con bases de datos en Laravel hacemos uso del ORM que trae consigo el framework por defecto, se trata de Eloquent, el cual nos ofrece un gran número de métodos muy útiles al momento de interactuar con cada modelo de datos (o tabla dentro de una base de datos). Por ejemplo

// Nueva instancia del modelo user
$user = new User;
// Devuelve el registro con id = 1
$user->find(1);

Para mas información sobre Eloquent visita nuestros tutoriales al respecto.

Esto es gracias a la clase Collection de Eloquent que a su vez extiende de la clase Illuminate\Support\Collection de Laravel. Esta clase nos ofrece también otra forma de trabajar con variables de tipo Array gracias al helper collect() de Laravel.

$array = [1,2,3,4,5];
$collection = collect($array);

// Devuelve "1" -- el primer elemento del array
$collection->first();

Visita el post sobre Uso de colecciones en Laravel.

Desafortunadamente cuando usamos el helper collect() no podemos obtener los valores de un array de la misma forma que lo hacemos con los objetos de Eloquent; Es decir, no podemos llamar $user->name, por el contrario tenemos que usar el método get() para obtener el valor.

$user = ['name' => 'Joe', 'age' => 25];

$user = collect($user);

$user->get('name');

Vamos a solucionar ese problema extendiendo la funcionalidad de la clase Illuminate\Support\Collection en una nueva clase que llamaremos Collector. Primero crearemos un nuevo directorio llamado Collector dentro de la carpeta app/. Una vez hecho esto, vamos a crear un nuevo archivo para nuestra clase llamado Collector.php que extenderá a la clase Illuminate\Support\Collection.

Ver post

Autocomplete usando AJAX con Laravel y jQuery

banner-jquery-laravel-autocomplete-usando-ajax

En esta lección del curso Curso de interfaces dinámicas con Laravel y jQuery vamos a terminar de integrar en nuestro proyecto de Laravel el plugin EasyAutocomplete de JQuery con el API de usuarios con los cuales hemos venido trabajando en las lecciones anteriores.  Adicionalmente, tendrás algunos tips para integrar el plugin de autocomplete en proyectos reales tanto como búsqueda como parte de un formulario.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Desarrollo de APIs con JSON y PHPUnit en Laravel

banner-jquery-laravel-desarrollo-api-json-con-phpunit

Bienvenidos a una nueva lección del Curso Interfaces dinámicas con Laravel y jQuery. Hasta los momentos ya tenemos instalado el plugin EasyAutocomplete de jQuery, pero ahora vamos a dedicarnos a la parte de backend que nos permitirá obtener los datos en formato json con los que usaremos el plugin. Para ello vamos a desarrollar guiándonos por pruebas (TDD) con PHPUnit.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Instalación de JQuery EasyAutocomplete en Laravel 5.1

instalar-jquery-easy-complete-laravel-5-1

En esta nueva lección vamos a proceder con la instalación del plugin Jquery EasyAutocomplete en Laravel. En las clases anteriores tocábamos temas correspondientes a ¿Cómo elegir un plugin o componente para tu proyecto? y explicábamos la razón de haber escogido este en particular, el día de hoy vamos a poner manos a la obra para que aprendas lo fácil que es incluir y probar un nuevo plugin en tu proyecto.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Registro de actividad con Laravel logging

registro-de-actividad-por-laravel-logging Los logs en Laravel almacenan la información correspondiente a todos los errores (Excepciones) y/o eventos inesperados dentro de una aplicación para tener un registro de estas incidencias y así poder depurar mucho más fácil nuestro código. Estos logs se almacenan en el archivo laravel.log dentro de la carpeta /storage/logs, lo siguiente es un ejemplo de cómo se registran las excepciones en dicho archivo.

Ver post

Jquery EasyAutocomplete en Laravel 5.1

easy-autocomplete-query-laravel-5-1

Un autocomplete nos permite cargar una caja de texto o selector con una lista limitada de opciones dependiendo de lo que escriba el usuario en ella, básicamente nos presenta los resultados de la búsqueda en tiempo real y nos muestra las opciones disponibles que podemos seleccionar. Estas opciones pueden provenir de una base de datos y utilizando Ajax podemos cargar los resultados en la vista de forma transparente al usuario.

Easy Autocomplete es un plugin de JQuery que nos permite realizar este proceso, en el próximo vídeo veremos todas las ventajas que este plugin nos ofrece y cuáles son las posibles aplicaciones que pude tener dentro de cada uno de nuestros proyectos.

Regístrate para ver ésta y cientos de lecciones exclusivas.

¿Cómo elegir un plugin o componente para tu proyecto?

como-elegir-un-plugin-o-componente-para-tu-proyecto

Bienvenidos a la tercera parte del Curso de interfaces dinámicas con Laravel y jQuery. En esta lección vamos a empezar a trabajar con el plugin o componente para el autocompletado con jQuery. Aunque antes vamos a analizar cómo hacer la elección del plugin más adecuado a las necesidades de nuestro proyecto.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Suscríbete a nuestro boletín

Te enviaremos publicaciones con consejos útiles y múltiples recursos para que sigas aprendiendo.

Suscríbete a nuestro boletín

Recibe consejos útiles, promos y múltiples recursos directamente en tu correo.

Tu nombre y correo serán enviados directamente a MailChimp. No compartiremos tus datos con otras empresas.