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.

PHP Traits en Laravel 5.1

php-traits-laravel-5-1

Uno de los pilares de la programación orientada a objetos es la jerarquía, en la cual podemos hablar de la herencia simple y la herencia múltiple. La herencia es un mecanismo que nos permite crear una clase a partir de la definición de una (herencia simple) o varias (herencia múltiple) ya existentes. Sin embargo, muchos de los lenguajes de programación no soportan la herencia múltiple. PHP es uno de ellos, es decir que con este lenguaje si queremos obtener las propiedades y métodos de una clase para crear una nueva clase solamente lo podemos hacer de una única clase.

Pero trabajar con herencia múltiple nos da ventajas en cuanto a reutilización de código y por tanto, para solventar ese problema a partir de la versión PHP 5.4 se agregó un mecanismo que nos permite emular la herencia múltiple: Traits.

Ver post

Servidores | Instalación de Composer y Laravel

Logo
5

Instalación de Composer y Laravel

Curso de Servidores Parte 1

Bienvenidos a esta nueva lección del curso para Crear y configurar un droplet (VPS) en Digital Ocean, en la clase de hoy aprenderemos a instalar Composer y Laravel en nuestro servidor. Recuerda que en las clases anteriores hemos visto cómo configurar nuestro droplet, pero además de ello queremos enseñarte a que puedas configurar un completo entorno de producción para tus proyectos o aplicaciones en Laravel.

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.