En cursos anteriores hicimos énfasis en trabajar la parte frontend del proyecto, pero muchas veces en el día a día se requiere un panel de administración para nuestra aplicación. Por ello hoy vamos a iniciar un nuevo curso donde aprenderemos a crear paneles de control para un proyecto con Laravel que contengan las características comunes que se pueden usar en este tipo interfaces como subida y procesado de imágenes, combos dinámicos dependientes, funcionalidades de autocompletado, entre otras.
Regístrate para ver ésta y cientos de lecciones exclusivas.
Blade es un sistema de plantillas para PHP que viene integrado por defecto en el framework Laravel con el cual podemos entre otras cosas, crear plantillas, extenderlas, integrar o imprimir variables PHP sin perder el buen estilo del código de nuestra aplicación gracias al uso de etiquetas que nos provee.
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.
Los services providers permiten registrar servicios, middleware, event routes, etc. bajo una estructura de «Programacion Orientada a Objetos» de tal manera que pueden ser usados para configurar nuestras aplicaciones. Por ejemplo Laravel trae consigo por defecto algunos service providers que podemos utilizar, editar y reusar, pero en la lección de hoy aprenderemos como crear un nuevo service provider, no solo para Laravel sino para cualquier proyecto de PHP.
Los service provider nos permiten entre otras cosas reutilizar parte del código ya creado para que se pueda extender la funcionalidad de cualquier componente dentro del proyecto; lo cuál nos hace tener un código más flexible así como más fácil de escalar y mantener al mediano y largo plazo.
Regístrate para ver ésta y cientos de lecciones exclusivas.
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.
Esta es una nueva lección de la segunda parte de nuestro curso Crea componentes para PHP y Laravel , en esta clase aprenderás a crear una clase genérica que pueda ser implementada para crear un Facade en nuestro proyecto, pero ¿ Por qué hacer uso de una clase genérica ? Bien, nuestro proyecto es relativamente sencillo, simplemente necesitamos crear un método para una clase y haremos uso de un Facade, pero cuando tenemos un sistema un poco más complejo debemos crear una solución más genérica que permita crear e implementar todos los Facades que necesitemos de una forma más optima.
Vamos a crear esta clase genérica para implementar un nuevo Facade para nuestro Access Handler, pero va a ser lo suficientemente versátil para poder ser usada posteriormente en caso de ser necesario, no sólo para el Access Handler sino para cualquier otra clase del proyecto.
Regístrate para ver ésta y cientos de lecciones exclusivas.
Duilio Palacios 11/10/2015 PHP, Programación orientada a objetosComentarios desactivados en Implementación de «Facades» en un proyecto de PHP
En esta lección de la segunda parte del curso Crear componentes para PHP y Laravel vamos a empezar a desmitificar la magia detrás de los Facades de Laravel e implementar esa forma de trabajar en nuestro mini proyecto.
Regístrate para ver ésta y cientos de lecciones exclusivas.
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.