Laravel 5.1 es la versión actual de Laravel, la cual es LTS y es compatible con la versión anterior (5.0), en estos tutoriales te explicaremos todo lo que necesitas saber de esta nueva versión.
Como pudimos ver hace algún tiempo en nuestro post sobre URLs amigables y rutas con slugs en Laravel,un slug es una versión simplificada del texto de un enlace de manera que éste sea más legible y pueda ser un identificador más apropiado, especialmente para el posicionamiento en los buscadores (SEO). En la lección de hoy vamos a probar el paquete Eloquent-Sluggable que nos ofrece algunos otras funcionalidades adicionales en cuanto a la creación de slugs personalizadas dentro de nuestras aplicaciones de Laravel.
Laravel nos ofrece una forma muy conveniente de manejar todos los errores que pueda generar nuestra aplicación como 404 (Página no encontrada), 401 (Permiso denegado), 500 (Error interno del servidor) y cualquier otros posibles errores. No sólo podemos capturar y evaluar cada excepción sino también podemos devolver una vista personalizada para cada uno de ellas. En la lección de hoy aprenderemos a capturar dichas excepciones para acceder a su información y poder retornar la respuesta adecuada.
Gravatar (por su abreviación Globally Recognized Avatar) es un servicio para proporcionar un avatar reconocido globalmente asociado con un correo electrónico. Los usuarios que registran su cuenta en gravatar.com establecen una imagen deseada como avatar para un email en específico. Ésta es una funcionalidad muy usada en comentarios de blogs y foros pero también podemos implementarlo en nuestras aplicaciones de Laravel de una manera sencilla, tan sólo con el email de nuestros usuarios.
Cuando desarrollamos una API REST es una buena práctica manejar todos los cambios de funcionalidades de la misma a través de versiones que se manejan como un parámetro en la url de la misma, de tal forma un cliente puede hacer peticiones a cualquiera de las versiones de la API que esté utilizando.
En Laravel esto se puede gestionar muy fácilmente gracias al uso del componente de rutas con el cual podemos agrupar una serie de ellas bajo un mismo prefijo que podemos utilizar para visionar nuestra API.
En esta lección vamos a aprender a agregar protección de acceso a nuestra API con el uso de un access key, de esta forma los «clientes» de la API deberán suministrar su clave de acceso para poder hacer uso de ella.
Hasta ahora podemos realizar una petición desde cualquier cliente sin necesidad de suministrar ningún tipo de identificación; esto podemos solucionarlo de muchas maneras, en este caso vamos a utilizar lo básico, que es crear una api key dentro del código de nuestra API que el usuario debe enviar con cada petición, luego el sistema la compara y si no coincide la petición se rechaza y se devuelve un mensaje de error al cliente.
Para cargar datos a nuestra aplicación mientras estamos desarrollando puede que nos sea mucha utilidad el componente Seeders de Laravel que junto con los Models Factories nos permiten tener de una manera rápida y sencilla datos ficticios con los que trabajar. Pero ¿Qué sucede cuando tenemos la necesidad de cargar datos reales o dados por el mismo el mismo cliente? o éste nos solicita la funcionalidad de poder carga información en la aplicación a través de un archivo excel o csv. Para ello, veamos cómo podemos hacerlo con Laravel Excel.
Hasta el momento hemos probado el funcionamiento de nuestra API utilizando el componente de pruebas de Laravel y nuestro navegador para obtener los datos de un usuario como lo hicimos en la lección sobre Route Model Binding, en este último caso, todo funcionaba bien, pero cuando deseamos enviar una petición de tipo POST , no podemos realizarlo directamente desde la url de nuestro navegador; para ello podemos hacer uso de Postman que es un plugin de Chrome que nos permite simular peticiones web de tipo JSON a través de un formulario en nuestro navegador.
Como hemos visto en lecciones anteriores Laravel nos provee una base bien estructurada para el desarrollo de APIs y gracias al uso del componente de rutas podemos definir recursos con los cuales podemos interactuar fácilmente desde cualquier otra aplicación.
Presentar información en formato PDF es uno de las peticiones más usuales por parte de nuestros clientes ya sea para informes privados o algún reporte hacía los usuarios que ocupan el sistema.
En un post anterior @jeffer8a nos mostró cómo hacer uso del paquete DomPdf desarrollado por barryvdh, pero algunas veces tenemos que usar una plantilla HTML diseñada con Foundation o Bootstrap para generar el PDF . Este es un inconveniente con DomPDF ya que no permite el uso de este tipo de framworks. Es ahí donde puede usarse el Laravel-Snappy , el cual es un Service Provider de Snappy.
En la clase anterior creamos un CRUD básico devolviendo una respuesta en formato JSON para cada uno de los métodos de nuestro controlador de usuarios, pero sólo tomamos en cuenta el posible caso de que los datos fuesen validos y no se encontrara ningún error durante la ejecución. Ahora, en esta lección vamos a agregar las validaciones correspondientes para manejar otros posibles escenarios.
Styde usa cookies para guardar tus preferencias y para seguimiento anónimo AceptarLeer más
Privacy & Cookies Policy
Privacy Overview
This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.