Escolar Documentos
Profissional Documentos
Cultura Documentos
Formación especializada TI
Ruby on Rails
Ruby on Rails es un entorno de desarrollo web de código abierto que está
optimizado para la satisfacción de los programadores y para la productividad
sostenible. Te permite escribir un buen código evitando que te repitas y
favoreciendo la convención antes que la configuración.
¿Qué es Rails?
Rails es un armazón para construir aplicaciones web que acceden a bases de
datos.
¿Un arma-qué?
Rails fue creado en 2003 por David Heinemeier Hansson y desde entonces ha
sido extendido por el Rails core team, más de 2.100 colaboradores y soportado
por una extensa y activa comunidad.
¿Por qué Ruby on Rails?
● Esta escrito en Ruby
● SASS, CoffeScritp, HAML, etc. Son nativos de Rails
● ActiveRecord (Nada SQL)
● Usa MVC (Promueve buenas practicas de desarrollo)
● Comunidad fuerte
● Esta probado
Principios Rais
● No te repitas a ti mismo (Don't Repeat Yourself): DRY establece "Cada pieza
del conocimiento debe ser única, sin ambigüedades, con su propia autoridad
y representación dentro de un sistema". nuestro código es más fácil de
mantener, más reutilizable y con menos errores
Instalar Rails
Nuestra primer aplicación
Para iniciar nuestra primer aplicación basta con situarnos en el lugar en que
queremos crear nuestro proyecto y usar el comando rails new nombre-proyecto
● GET(defecto)
● POST
● PATCH
● PUT
● DELETE
Desde el archivo routes podemos reconfigurar las rutas especificando una serie de reglas, por ejemplo
definir una ruta personalizada y dirigirla a un método de un controlador especifico.
Recursos
Dentro de routes también podemos definir resources que básicamente son rutas para
cada uno de los verbos HTTP sobre un controlador. Son las rutas estándar para hacer un
CRUD.
La primer ruta get "/tareas“ que apunta a la función index. Hasta este momento no existe el controlador
tareas asi que debemos crearlo, para hacerlo paso a paso creemos el archivo desde sublime. Recuerda
la convención del nombre tareas_controller y dentro la convención de clases TareasController y
recuerda que todos los controladores heredan de <ApplicationController.
Luego de que tengas el controlador creado ahora si podremos crear las funciones, iniciemos por index.
En Rails cada función tiene una vista asociada asi que no olvides en views crear una carpeta para el
controlador tareas y luego dentro un archivo para cada método que generemos en este caso
index.html.erb. Con esto ya podríamos acceder a la ruta.
Controlador REST Index
Index
La idea la función index en un API REST es que esta me permita listar todos los elementos de un
recurso(tabla). Para esto podemos apoyarnos en las funciones del modelo que habíamos definido
anteriormente (ActiveRecord). Para utilizarlo primero debemos crear una instancia al modelo y luego
usar su método all. Este valor lo debemos asignar a una variable de clase para poder pasar estos
datos a la vista.
Show
Este otro método esta diseñado para mostrar un solo dato del recurso filtrado por su id. Para traer este
dato podemos usar la función del modelo find. Esta función recibe como argumentos el id y nosotros lo
podemos obtener de la url por medio del método params de Rails. El cual consiste en un hash con
todos los parámetros que se enviaron en la petición.
New
Este método se refiere a la vista que contiene el formulario para crear un nuevo elemento(registro) de
nuestro recurso(tabla). Para que podamos encapsular la información del formulario debemos crear un
nuevo objeto de nuestro modelo y enviarlo a la vista. En la vista nos vamos a apoyar en un helper de
Rails llamado form_for para diseñar el formulario. En este caso no debemos definir ruta ni verbo ya que
la configuración por defecto nos sirve.
Create
Este método recibe datos desde un formulario de la vista new. Para recibirlo debemos usar nuevamente
el método params de Rails y para cada parámetro asignarlo a un elemento de un hash. Este hash es el
argumento que le vamos a pasar a un nuevo objeto de nuestro modelo y que luego almacenaremos por
medio del método save. Luego podemos hacer un redireccionamiento al elemento que acabamos de
crear para que no nos quedamos en el formulario new.
La primera que podemos agregar en el index es una ruta a show para cada elemento.
Finalmente desde el formulario podríamos agregar un botón de volver al inicio, por si no queremo hacer
nada.