Skip to content

Instantly share code, notes, and snippets.

View javierav's full-sized avatar
😎

Javier Aranda javierav

😎
View GitHub Profile
@javierav
javierav / api-curl.md
Created August 17, 2020 07:19
Prueba tu API con cURL

Bienvenido a esta breve guía sobre el comando curl, con el que podrás realizar peticiones a tu API de forma sencilla y simple desde la línea de comandos.

Operaciones básicas

GET

curl -i -H "Authorization: Token 8ugeb8frSzhiJuBDJNqhYDJk" http://localhost:3000/api/v1/users
@javierav
javierav / turbolinks.md
Created August 17, 2020 07:20
Introducción a Turbolinks
@javierav
javierav / mr.md
Created August 17, 2020 07:21
Etiquetado de los Merge Requests

En Gitlab podemos definir etiquetas para luego ser aplicadas a los merge requests. Sirva este documento como propuesta inicial para debatir su uso en todos los proyectos corporativos.

Etiquetas de acción requerida

Estas etiquetas sirven para indicar que ese merge necesita algún tipo de acción por parte de uno de los intervinientes: desarrolladores, maquetadores, etc.

|   | COLOR | DESCRIPCIÓN |

@javierav
javierav / rails-ujs.md
Created August 17, 2020 07:22
Introducción a Rails UJS

Bienvenido a la guía sobre el Unobtrusive Javascript que nos proporciona Rails. En esta guía aprenderemos las posibilidades que nos brinda esta librería y cómo podemos usarla en nuestros proyectos para darle dinamismo a nuestra aplicación sin escribir ni una sóla línea de código Javascript.

Instalación

Para poder usar la librería tenemos que añadirla como dependencia a nuestro proyecto.

yarn add @rails/ujs

En esta guía vamos a aprender a utilizar las migraciones de Ruby on Rails, la parte que nos permite definir y actualizar el esquema de la base de datos PostgreSQL de nuestro proyecto.

Introducción

Una de las principales diferencias entre una base de datos no relacional como MongoDB y otra relacional como PostgreSQL es que mientras que en la primera cada documento de una misma colección puede tener una estructura diferente de campos, en la segunda es necesario informar a la base de datos de que campos vamos a tener en cada tabla antes de realizar cualquier operación de inserción.

Cuando definimos el esquema de los datos que vamos a usar podemos hacerlo de varias formas:

  • Operando directamente la base de datos desde su consola de administración.
  • Creando un archivo SQL con la definición.
@javierav
javierav / postgre.md
Created August 17, 2020 07:26
Instalación y configuración de PostgreSQL

Instalación

Para poder trabajar con PostgreSQL lo primero que tenemos que hacer es instalarlo en nuestro entorno si todavía no lo tenemos instalado.

asdf

Es la opción recomentada ya que permite gestionar varias versiones de forma facil !!

Si ya tenemos postgres se recomienda desistalarlo antes de seguir

@javierav
javierav / rails-i18n.md
Created August 17, 2020 07:27
Cómo organizar las traducciones

En nuestras aplicaciones web solemos tener diferentes tipos de textos que deben ser traducidos a la hora de generar el HTML de nuestra página en función del idioma del usuario. Para realizar esta labor, Rails incorpora un sistema de I18n.

En esta breve guía aprenderemos a configurar el sistema de internacionalización y a cómo organizar en diferentes archivos y jerarquía nuestras traducciones para que sean fácilmente localizables.

Configuración

Dado que la configuración de un idioma, por norma general no afecta a un determinado entorno, realizaremos toda la configuración en el archivo config/application.rb.

Idioma por defecto

@javierav
javierav / rails-testing.md
Created August 17, 2020 07:28
Cómo testear nuestra aplicación

Si has tenido la enorme suerte de trabajar en un proyecto en el que se usa Rails de la manera tradicional (dónde las páginas HTML se renderizan en el servidor y la carga de Javascript es la mínima indispensable), aquí tienes una breve guía de cómo debes testear tu aplicación para conseguir una cobertura y velocidad de ejecución óptimas.

Tipos de tests

Todas las aplicaciones que realicemos deberán implementar los siguientes tests (siempre que sea posible):

Tests unitarios

Es la única parte que no cambia respecto a lo que ya veníamos haciendo. Deberemos testear de forma unitaria los modelos, los jobs, las policies y las clases propias usando la forma habitual.

@javierav
javierav / factory-bot.md
Created August 17, 2020 07:28
FactoryBot

En esta guía vamos a aprender a usar factorías con FactoryBot para generar modelos con datos de prueba para nuestros tests o entornos de desarrollo.

Esta guía no deja de ser un resumen de la documentación oficial que podremos encontrar aquí.

Instalación

Normalmente ya la tendremos instalada en nuestro proyecto, pero si no lo está, debemos añadir a nuestro Gemfile del proyecto la siguiente línea:

@javierav
javierav / rails-config.md
Created August 17, 2020 07:30
Configuración de Ruby on Rails

En esta guía vamos a conocer como se podemos hacer uso de la base de datos PostgreSQL en nuestro proyecto Ruby on Rails.

Lo más habitual es que cuando comencemos un proyecto, desde el departamento de arquitectura nos faciliten ya el esqueleto montado de nuestra nueva futura aplicación molona con todo lo que necesitamos para comenzar a trabajar, pero también se puede dar el caso de que por nuestra cuenta queramos ir aprendiendo a usar ActiveRecord si todavía no estamos en un proyecto que tenga la suerte de usarlo, por lo que a continuación veremos como hacerlo desde cero.

Si queremos tener un proyecto de referencia podemos usar el generador ns_cli para genera un proyecto Rails que por defecto está configurado con PostgreSQL.

Generando una nueva aplicación