Trabajando con parámetros de ruta en Laravel

Hoy vamos a hablar un poco sobre los parámetros que se pueden pasar en la URL cuando usamos el framework Laravel y sobre la importancia del nombre de la variable que los mismos deben tener.

Recuerda que cuando usas un resource de Laravel, el framework asigna un nombre dependiendo del modelo; y varias veces no es el que esperamos.

Por otro lado debemos cuidar el nombre de la variable cuando recibimos el parámetro en un controlador.

Veamos cómo funcionan los parámetros de ruta en Laravel al usar resources y controladores, además de un truco para saber el nombre de los parámetros de las rutas de Laravel.

(más…)

Montar y configurar proyecto existente de Laravel desde cero

En este post te describiré cómo montar un proyecto de Laravel en tu servidor de desarrollo. Lo hago para los clientes a los que les envío el código y necesitan una guía para hacerlo.

Este tutorial también sirve por si te has descargado un proyecto de Laravel y lo quieres colocar en tu servidor de desarrollo.

Por cierto, este tutorial va enfocado a usar Laravel con Apache en Windows.

(más…)

Por parzibyte, hace

Laravel: crear primer usuario del sistema

En nuestros proyectos de Laravel podemos agregar la autenticación de usuarios de manera simple usando lo que el framework provee.

Sin embargo siempre hay un pequeño problema y es el de crear el primer usuario del sistema o el primer administrador del sistema, ya que para crearlo necesitamos estar logueados, pero para loguearnos debe existir un usuario.

Hay varias técnicas para crear un primer usuario del software en Laravel con PHP pero hoy te mostraré uno sencillo y a la manera de Laravel.

(más…)

Por parzibyte, hace

Laravel: problemas con route model binding y middleware propio

En este pequeño post voy a relatar un pequeño problema que tuve con las rutas de Laravel al pasar un Model a través de la URL usando el Route Model Binding.

El problema era que yo pasaba el modelo por la URL pero al momento de recibirlo en el controlador, el mismo estaba vacío. Mejor dicho, era un arreglo vacío o un Model nuevo sin atributos.

Después de horas depurando me di cuenta de que el problema estaba causado debido a un middleware propio que yo había escrito.

(más…)

Laravel: establecer manualmente URL “intended”

En este post sobre Laravel aprenderás a modificar o establecer manualmente la URL intended o URL de destino dentro de un middleware.

Por si no lo sabes, la URL de destino (al menos para este contexto) es aquella URL a la que el usuario intentaba acceder antes de que un middleware lo interceptara y redireccionara.

En otras palabras, supongamos que quieres acceder a la url “panel-de-control”. Si no estás logueado, se redirecciona a “login”; en este caso la URL de destino sería “panel-de-control” pues era la URL a la que intentabas acceder.

Lo que veremos será cómo modificar esa URL dentro de un Middleware personalizado.

(más…)

Generar slug único con Laravel

En este post te mostraré cómo generar un slug o URL amigable a partir de una cadena, pero además de eso, te enseñaré a que ese Slug sea único y que no se repita aunque la cadena de entrada sea la misma.

Con esto quiero decir que vamos a generar un slug único en Laravel con el lenguaje PHP y algunas funciones del framework.

(más…)

Laravel: cambiar tipo de dato en migración

En este post sobre Laravel y SQL te voy a mostrar cómo cambiar el tipo de dato de una columna en la tabla, usando una migración de Laravel para evitar hacerlo manualmente. De este modo llevamos un control de versiones de la base de datos.

El ejemplo que te mostraré para cambiar el tipo de dato de una columna en Laravel no usa la dependencia dbal, de hecho no usa ninguna dependencia extra, pues utiliza una sentencia propia de SQL.

(más…)

Laravel – Manejar varios idiomas

En este post te mostraré cómo puedes mostrar tus sitios, aplicaciones o sistemas en Laravel en distintos idiomas usando lo que ya ofrece el propio Framework. Es decir, mostrar tu aplicación web de Laravel en inglés y español, por ejemplo.

Varios idiomas en aplicación de Laravel con PHP

Te voy a mostrar un ejemplo simple.

(más…)

Laravel: obtener nombre de ruta en Middleware

Hoy te mostraré cómo acceder a la ruta a la que se intenta acceder cuando se intercepta el flujo de Laravel en un middleware.

Es decir, saber, dentro del middleware, a cuál ruta quiere navegar el usuario y a partir de la misma dejarlo pasar o denegarle el permiso. También se puede registrar la ruta, etcétera (todo lo que se puede hacer en un middleware).

(más…)

Laravel: obtener SQL generado por ORM

En este post te mostraré cómo obtener el código SQL que Laravel ejecuta al usar el ORM. Es decir, obtener el SQL generado por Eloquent. Por ejemplo, si tú haces un DB::table("productos")->all(); te mostraré cómo obtener la consulta generada que sería SELECT * FROM productos.

Todo esto que te menciono es útil al depurar, pues así puedes ver si te estás equivocando en algún método. Además, también sirve para aprender Laravel, pues se puede observar cómo es que los métodos modifican a la consulta interna.

(más…)

Laravel: paginación de registros

En este post te voy a mostrar cómo puedes realizar una paginación en Laravel; es decir, mostrar registros (de la base de datos) por página, en lugar de mostrarlos todos a la vez.

Laravel ya provee una manera realmente sencilla de agregar paginación, incluso da la opción de agregar los enlaces a la página, y por supuesto, también permite cosas como la búsqueda u otros métodos del Query Builder, todo esto sin escribir ninguna consulta SQL manual.

(más…)

Crear PDF con Laravel

En este post te mostraré cómo crear o generar un PDF usando Laravel y las ventajas que nos ofrece este framework.

Vamos a usar la librería dompdf que, en combinación con Laravel y una librería extra, nos permitirá renderizar vistas de Blade y convertirlas a PDF de una manerae realmente sencilla.

Asumo para este caso que ya sabes usar Laravel al menos de manera mínima, y que gestionas las dependencias de tu proyecto con composer.

También me gustaría recomendarte mi post sobre dompdf con php nativo; que si bien no es necesario, te ayudará a ver qué otras cosas puedes hacer. Entre los ejemplos está una factura con Bootstrap 3 o un ticket para impresora térmica.

(más…)

Laravel: agregar campos a User

En este post te mostraré cómo puedes agregar campos de la tabla “users” en Laravel para así poder añadir algunos campos al modelo User. Explicado con otras palabras vamos a modificar la tabla de usuarios.

Con este modelo me refiero al usuario que se usa para iniciar sesión y en general hacer la autenticación en Laravel. Veremos cómo agregar otro campo además de los que ya existen.

(más…)