No sólo podemos tener pruebas que verifiquen la calidad de nuestro código en cuestión de segundos. Con integración continua, una práctica de ingeniería de software, podemos incluso lograr que nuestras pruebas unitarias se ejecuten de manera automática en entornos de desarrollo con diferentes características, como por ejemplo diferentes versiones de PHP.
En esta última lección del curso Creación de componentes para PHP y Laravel veremos cómo configurar Travis CI con el repositorio de nuestro componente, el cual es un servicio para realizar integración continua que podemos vincular con GitHub, que monitorea el repositorio y al ocurrir un cambio o actualización del código, ejecuta las pruebas unitarias para posteriormente obtener un reporte del resultado de la ejecución de las pruebas, es decir, si pasaron o no en los diferentes entornos que hayan sido configurados previamente.
Regístrate para ver ésta y cientos de lecciones exclusivas.
Bienvenidos a una nueva lección de la tercera parte del curso Creación de componentes para PHP y Laravel, donde aprenderás a publicar un nuevo proyecto en Packagist para compartirlo con la comunidad de PHP. Te indicaremos cuáles son los pasos a seguir y que debes tomar en cuenta en la configuración del archivo composer.json de los proyectos que instalarán nuestro paquete.
Regístrate para ver ésta y cientos de lecciones exclusivas.
En la lección anterior creamos un nuevo proyecto «container», en el cual incluimos parte del código desarrollado en la parte 2 de este curso, agregando algunos cambios necesarios, por supuesto, todo esto haciendo uso de pruebas unitarias. Aunque todas las pruebas están pasando hasta este momento, debemos hacer algunos arreglos adicionales para poder utilizar este componente. En la lección de hoy finalmente vamos a incluir el componente externo «container» creado dentro de nuestro mini proyecto.
Regístrate para ver ésta y cientos de lecciones exclusivas.
Styde Seeder es un componente desarrollado por Duilio para mejorar el proceso de creación de datos de prueba en nuestros proyectos de Laravel. Este paquete nos proporciona un conjunto de métodos que nos permiten trabajar con esto de una manera sencilla. En este tutorial veremos cómo trabajar con él.
Laravel nos permite entre otras cosas el desarrollo de API’s que puedan ser consumidas desde otro recurso o software externo como aplicaciones web de terceros, aplicaciones móviles, etc. pero ocasionalmente y en sentido contrario, es necesitamos realizar peticiones a una o varias API’s.
En PHP se pueden hacer peticiones web utilizando por ejemplo CURL que es «Una librería que nos permite conectarnos y comunicarnos con diferentes tipos de servidores usando diferentes tipos de protocolos como http, https, ftp, entre otras«.
// Conectarse a un cliente web
$ch = curl_init("http://www.example.com/");
// Abrir un archivo
$fp = fopen("example_homepage.txt", "w");
Guzzle es un paquete de PHP que permite, de una forma muy fácil, realizar todas estas peticiones HTTP para integrar servicios web de terceros dentro de nuestras aplicaciones.
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.
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.
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.
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.
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.