Introducción a

Ruby on Rails

@KattyaCuevas

@KattyaCuevas

¿Qué es Rails?

  • Framework Web escrito en el lenguaje de programación Ruby

  • Open Source

@KattyaCuevas

Rails Way

  • Rails toma decisiones por ti para que te preocupes solo en la lógica de la aplicación

  • Arquitectura: Patrón MVC, RESTful

  • Estructura: directorios, nombres de archivos, estándar de nombres, archivos de configuración

  • Librerías: CoffeeScript, Jquery, Sass

@KattyaCuevas

Principios

  • No te repitas a ti mismo

  • convención sobre configuración

@KattyaCuevas

$ gem install rails

  • Las gemas son las librerías o paquetes en Ruby

  • https://rubygems.org/

  • Instala la gema de rails

  • Permite ejecutar los comandos de Rails y se agregan al Path de la terminal

@KattyaCuevas

$ rails new blog

  • Crea una nueva aplicación Rails de nombre "demo"

  • Subdirectorio con el nombre de la aplicación

  • Estructura de directorios y archivos
  • cd blog

@KattyaCuevas

$ bundle install

  • Utiliza Bundler para el manejo de dependencias del proyecto

  • Dependencias declaradas en Gemfile

  • Si se actualiza el Gemfile se debe ejecutar $ bundle install

@KattyaCuevas

$ rails server

  • Inicializa el servidor local de Rails

  • Servidor web por default: Webrick

  • Puerto por default: 3000

  • Abre un browser en http://localhost:3000

@KattyaCuevas

rails g scaffold Post title body:text

  • Generador de código para un mantenimiento completo (CRUD)

  • Crea los archivos y directorios para el model, view y controller

  • Crea la migración, tests, configuración de routes, assets y helpers

@KattyaCuevas

Migraciones

  • Forma conveniente de alterar el schema de la base de datos

  • Ejecuta las migraciones pendientes

    • $ rake db:migrate

  • Actualiza el schema.rb

  • Nos permiten manejar versiones de la base de datos

@KattyaCuevas

validates_presence_of :body, :title
  • Las validaciones nos aseguran que sólo datos válidos sean guardados en nuestra base de datos.

    Las validaciones en los modelos son más robustas, a diferencia de los controllers que se hacen difíciles de mantener a largo plazo, y por el lado del cliente, no es muy seguro ya que si se hacen validaciones con JS, no se darían estas validaciones cuando en el navegador no esté activado JS.

@KattyaCuevas

rails generate resource Comment post:references body:text

 

Introducción a Ruby on Rails

By Kattya Cuevas Montes

Introducción a Ruby on Rails

  • 140