Laravel el framework PHP mas utilizado
Artículos, consejos y tutoriales sobre el framework Laravel, desarrollado por Taylor Otwell
Laravel es un framework de código abierto desarrollado por Taylor Otwell en 2011, enfocado en el desarrollo de aplicaciones mediante PHP y desarrollando el patrón de diseño MVC hasta su evolución actual. Laravel es uno de los frameworks de desarrollo más utilizados del mundo.
Primero pasos con PEST el Framework de pruebas de PHP
En este artículo voy a poner dos ejemplos de uso de PEST con Laravel. Para ello, voy a utilizar un ejemplo para test Unitario y otro para Laravel Dusk (test de navegador). Lo primero va a ser instalarlo. Para ello: Y como estamos en Laravel, pues el plugin para utilizarlo: Y ahora hacemos...
Leer mas...Paginando Colecciones con Laravel y optimizando consultas SQL
Estos días me he encontrado con un caso real, en el que hacía dos consultas a la base de datos cuando realmente sólo quería hacer una. A veces lo que uno quiere y lo que puede conseguir no son compatibles, pero en este caso si que ha sido posible. Planteo el problema. Imagina que tienes un...
Leer mas...Refactoriza y simplica tus Controladores con Laravel
Los Controladores en Laravel, gestionan las peticiones HTTP
y sirven para gestionar la relación entre el Modelo y la Vista. Todo lo demás que incluyamos en el Controlador, está de más. Por ejemplo, las llamadas a la base de datos no deberían estar aquí, sino en el Modelo o la...
Gestionando cookies con Laravel Livewire
Enfrentándome a un caso real, he descubierto que no es posible actualizar cookies en tiempo real con Laravel Livewire, al menos, no de forma directa. Lo bueno es que hay una solución.
El problema surge cuando utilizas Cookie:queue()
y esperas recibir una respuesta del proceso. Por...
Laravel Pint, el corrector de estilo para PHP
El equipo de desarrollo de Laravel, con Nuno Maduro a la cabeza, ha lanzado Laravel Pint. Un corrector de estilo para PHP basado en PHP-CS-Fixer. PHP-CS-Fixer es un corrector de estilo para PHP que sigue los estandars definidos en PSR1, PSR2,... estos estándars puedes encontrarlos en...
Leer mas...Nuevos proyectos Laravel con Vite, la alternativa a Webpack
Hoy he empezado dos proyectos nuevos... la verdad es que a veces pienso que tengo que ir con mas calma. El caso es que he utilizado la última versión de Laravel, e incluye la nueva librería Vite, en sustitución de WebPack. Webpack ha sido el gestor del font-end de Laravel desde hace años a...
Leer mas...Cinco claves para ser mejor programador. Principios SOLID
Una de las principales herramientas para hacer código de mayor calidad, más fácil de mantener, y sobre todo, que te permita crecer como programador, es la de implementar en nuestro código los principios SOLID: S. Single responsibility principle: Principio de responsabilidad única. O....
Leer mas...Novedades en Laravel 9
Laravel es probablemente el Framework PHP más utilizado del momento, y cada vez que sale una nueva versión, revoluciona un poco a la comunidad de desarrolladores, y no es para menos, ya que las decisiones que se tomen en torno a su desarrollo, va a afectar directamente a todos los que...
Leer mas...Verificar resultados con Laravel Dusk y el navegador
Laravel dusk nos ofrece la opción de verificar si los cambios se han realizado en la base de datos después de realizar el test. El primer paso, sería realizar el test y con ello, los cambios en la base de datos, y puesteriormente, comprobar que los nuevos resultados (o la ausencia de ellos), se...
Leer mas...Principales errores con Laravel Dusk
Este artículo, es al final un pequeño recordatorio para cuando me pongo a hacer tests con Laravel Dusk y empiezan a surgir los errores al hacer las pruebas. He intentado recopilar los principales errores que me he encontrado, y como los he terminado por solucionar. Empecemos por los errores...
Leer mas...Package de selects dependientes multinivel para Laravel
Estoy trabajando en un nuevo proyecto y necesitaba un sistema de selects
dependientes y con niveles de dependencia infinitos. Revisando packages
para Laravel ya desarrollados me he encontrado con herramientas parecidas a https://select2.org/, que son geniales, pero me...
Configurando un package para hacer tests.
Me he visto por primera vez ante la situación de tener que testear un package para Laravel que además estaba basado en Livewire. No ha sido fácil, y me ha llevado algo de tiempo tenerlo todo preparado, sobre todo porque no hay mucha información al respecto. Lo primero ha sido crear el archivo...
Leer mas...Package para Laravel, para la gestión de Tablas de Datos
Hace algún tiempo, me plantee el reto de desarrollar un sistema de administración igual que Laravel Nova, pero sin usar Vuejs
, una autentica locura de la que aprendí muchísimo.
Esta idea loca, se debía a dos situaciones diferentes: por un lado, buscaba mejorar mis habilidades...
Usando funcionalidad Pages de Laravel Dusk
Últimamente estoy haciendo muchos tests
con Laravel Dusk
, y he encontrado en la opción de generar Pages
una forma de simplificarlos, y además, de una forma muy considerable.
La idea es no repetir código y crear métodos personalizados. En mi caso sigo una...
Trucos, consejos y sitaciones extrañas con Laravel Dusk
Llevo varios días liado con las pruebas de una plantilla para panel de administración realizada con Laravel
, Livewire
y AlpineJS
, y la verdad es que Laravel Dusk
se ha convertido en la base de las pruebas, junto con algunos test unitarios y...
Utilizando el formato de fechas europeo en Laravel
La gestión de las fechas con Laravel
puede ser un poco complicado, sobre todo, porque el formato de fechas en Europa es diferente al formato estadounidense y diferente al formato utilizado por las bases de datos.
Por ejemplo en Europa utilizados el formato d/m/Y
, en...
Componentes dinámicos y condicionales con Livewire y AlpineJS
Me he encontrado en la situación de querer cargar componentes de Laravel Livewire de forma condicional, y todo ello, en función de un campo select
o de un simple click en un enlace (en mi caso se trataba de un sistema de pestañas y contenedores).
La idea era no cargar nada de...
Buscador con Laravel Livewire y AlpineJS
El objetivo de este artículo es explicar cómo desarrollar un buscador con Livewire y complementado con AlpineJS, mi nuevo framework favorito para JavaScript. Lo primero es crear el componente para Livewire: Y nos generará dos archivos, uno ubicado en la carpeta...
Leer mas...Macros personalizados para Laravel Dusk
A día de hoy, es imposible realizar un desarrollo (en cualquier lenguaje de programación), sin realizar pruebas. En Laravel disponemos de varias herramientas para realizar nuestras pruebas: Http tests (basados en PhpUnit). Browser tests (basados en Selenium/WebDriver protocol). En este...
Leer mas...Crear un package para Laravel
Una buena forma de ordenar y reutilizar nuestro código de Laravel, es mediante el uso de packages. En este artículo, vamos a centrarnos en la creación y desarrollo de packages propios, pero si estás interesado en packages de terceros, aquí tienes una lista con los imprescindibles (por lo menos...
Leer mas...Packages imprescindibles para Laravel
Los packages para Laravel son sin lugar a dudas, un forma rápida de solucionar un problema de programación que ya ha sido pensado, planteado y solucionado por otro programador, y que en la mayoría de los casos, cuenta con el respaldo de la comunidad de Laravel. La idea de esta entrada del blog,...
Leer mas...Patrones de diseño y uso de Pipelines con Laravel
Las Pipelines de Laravel, nos van a permitir enviar un objeto a través de una serie de clases de forma sencilla y ordenada, simplificando considerablemente el código. Realmente, es un patrón de diseño utilizado por Laravel de forma interna, pero que no vas a encontrar en su documentación, y...
Leer mas...Múltiples conexiones a bases de datos con Laravel
Laravel permite realizar múltiples conexiones a bases de datos, independientemente del tipo de base de datos que sea (siempre que esté soportada por Laravel). Lo primero que tenemos que hacer, es definir estas conexiones. Para hacer esto, debemos ir a nuestro archivo de configuración: Allí...
Leer mas...Configurar helpers en Laravel
En ocasiones, podemos necesitar acceder a funciones (helpers), desde cualquier parte de nuestro código. Laravel no dispone de esta funcionalidad por defecto, pero existen varias formas de configurar nuestra aplicación, para solucionar esto. Antes de empezar con las diferentes opciones que...
Leer mas...