Diferencia entre revisiones de «Trabajo:Cómo aprender Ruby on Rails»

De FdIwiki ELP
Saltar a: navegación, buscar
m (bot: categorización de trabajos por curso)
(Algunas correcciones de acentuación y palabras, cursiva para las palabras en inglés)
Línea 61: Línea 61:
  
  
Ubuntu o debian (versión 1.9.3):  
+
Ubuntu o Debian (versión 1.9.3):  
  
'''sudo apt-get install ruby-full'''
+
''' ''sudo apt-get install ruby-full'' '''
  
  
CentOS, Fedora, or RHEL (última versión):  
+
CentOS, Fedora, ''or'' RHEL (última versión):  
  
'''sudo yum install ruby'''
+
''' ''sudo yum install ruby'' '''
  
  
 
OS X (última versión):  
 
OS X (última versión):  
  
  '''brew install ruby'''
+
  ''' ''brew install ruby'' '''
  
 
Windows: Usando el siguiente instalador  
 
Windows: Usando el siguiente instalador  
Línea 108: Línea 108:
 
Ubuntu o Debian:
 
Ubuntu o Debian:
  
'''sudo gem install rails'''
+
''' ''sudo gem install rails'' '''
  
 
= Gemas =
 
= Gemas =
  
 
Las gemas son librerías y bibliotecas que podemos añadir a los proyectos de Ruby
 
Las gemas son librerías y bibliotecas que podemos añadir a los proyectos de Ruby
on Rails. Extienden su funcionalidad haciendo más sencillo el desarrollo. Hay muchas gemas disponibles en Internet y que puedes descargar fácilmente. La forma más sencilla de hacerlo es utilizar Bundler. En esta página puedes aprender a usarlo rápidamente: http://bundler.io/ Las gemas suelen estar acompañadas de una completa documentación en su página de github.
+
on Rails. Extienden su funcionalidad haciendo más sencillo el desarrollo. Hay muchas gemas disponibles en Internet y que puedes descargar fácilmente. La forma más sencilla de hacerlo es utilizar Bundler. En esta página puedes aprender a usarlo rápidamente: http://bundler.io/ Las gemas suelen estar acompañadas de una completa documentación en su página de Github.
  
  
Línea 130: Línea 130:
  
  
'''Paperclip''' Para adjuntar archivos a modelos, con la intencion de que se traten de una manera similar a la que se tratan el resto de atributos. https://github.com/thoughtbot/paperclip
+
'''Paperclip''' Para adjuntar archivos a modelos, con la intención de que se traten de una manera similar a la que se tratan el resto de atributos. https://github.com/thoughtbot/paperclip
  
  
'''Ransack''' Permite crear formularios de busqueda complejos y realizar filtrados de forma eficiente. https://github.com/activerecord-hackery/ransack
+
'''Ransack''' Permite crear formularios de búsqueda complejos y realizar filtrados de forma eficiente. https://github.com/activerecord-hackery/ransack
  
  
Línea 152: Línea 152:
 
JavaScript también te puede ser de utilidad a la hora de realizar tu página web.  
 
JavaScript también te puede ser de utilidad a la hora de realizar tu página web.  
  
Para empezar lo más fácil es usar jQuery. jQuery es una biblioteca de JavaScript que facilita el desarollo web.  
+
Para empezar lo más fácil es usar jQuery. jQuery es una biblioteca de JavaScript que facilita el desarrollo web.  
  
  

Revisión de 11:58 21 dic 2015

Ruby on Rails (ROR), es un framework de aplicaciones web de código abierto escrito en el lenguaje de programación Ruby. Se centra en la simplicidad y es un lenguaje bastante amigable, razón por la que cada vez hay más páginas realizadas con Ruby on Rails: Twitter, Basecamp, etc.


Trabajo realizado por

  • Ana María Martínez Gómez (Doble Grado Ingeniería Informática - Matemáticas 5º)

¿Qué necesito saber antes de empezar con Ruby on Rails?

HTML

HTML (HyperText Markup Language) es un lenguaje de marcado para páginas web. Es necesario manejar HTML con soltura antes de ponerse a aprender Ruby on Rails, ya que Rails nos permite combinar HTML/HTML5 con Ruby.

En el siguiente enlace puedes encontrar un tutorial en inglés de HTML5 muy completo y con ejemplos:

http://www.w3schools.com/html/

Incluso aunque ya estés familiarizado con HTML te puede venir bien para consultarlo cuando te surja alguna duda.

CSS

CSS (Cascading Style Sheets) es un lenguaje de estilo que define la presentación de los documentos HTML. Es muy recomendable estar familiarizado con CSS antes de aprender Ruby on Rails dado que se utilizará en cualquier proyecto o plantilla con la que puedas querer trabajar. De todas formas sabiendo HTML se puede empezar con Ruby on Rails y consultar algún manual cuando necesites saber la sintaxis de algo en concreto.

Tanto para aprender desde cero como para consultas puntuales recomiendo el siguiente tutorial (en inglés), muy completo y con ejemplos:

http://www.w3schools.com/css/


Aprender Ruby

Primeros pasos

La siguiente guía Ruby en 20 minutos aunque es muy básica es un buen sitio por el que empezar. Está en español y tiene enlaces a la instalación.

https://www.ruby-lang.org/es/documentation/quickstart/


También te recomiendo el siguiente curso de Code School (Try Ruby) donde un gato te enseña a usar Ruby. Es muy asequible y ameno y te permite familiarizarte con el lenguaje sin instalar un interprete de Ruby.

https://www.codeschool.com/courses/try-ruby


Para cosas más concretas

Los enlaces de está sección están pensados para ser utilizados en el caso de que surjan dudas concretas al programar y no para empezar a usar Ruby on Rails.


Documentación de Ruby: Te permite consultar métodos de clases como String, Array, Hash, DateTime, Regexp, etc.

http://ruby-doc.org/


En el caso de que tengas que hacer uso de expresiones regulares en Ruby el siguiente editor de expresiones regulares puede serte de utilidad:

http://rubular.com/

Instalación

Ubuntu o Debian (versión 1.9.3):

sudo apt-get install ruby-full


CentOS, Fedora, or RHEL (última versión):

sudo yum install ruby


OS X (última versión):

 brew install ruby 

Windows: Usando el siguiente instalador

http://rubyinstaller.org/


Puedes encontrar más información sobre como instalar Ruby aquí: https://www.ruby-lang.org/en/documentation/installation/


Aprender Ruby on Rails

Una vez familiarizado con HTML, CSS y Ruby (secciones 1.1, 1.2 y 2.1) puedes comenzar a aprender Ruby on Rails.

El siguiente tutorial (en inglés) es muy completo y extenso y te proporciona todo lo que necesitas saber de Rails:

http://guides.rubyonrails.org/

Lo mejor es crear un proyecto e ir programando a la vez que lees el manual. Las secciones que necesitas leer son las siguientes:

Start Here (Getting Started with Rails), Models (Active Record Basics, Rails Database Migrations, Active Record Validations, Active Record Callbacks, Active Record Associations, Active Record Query Interface), Views (Action View Overview, Layouts and Rendering in Rails, Action View Form Helpers), Controllers (Action Controller Overview, Rails Routing from the Outside In).

Una vez que estés programando es muy probable que necesites leer algunas otras, pero con esas es suficiente para empezar.


Para cosas más concreta puedes usar la documentación de Ruby on Rails:

http://api.rubyonrails.org/

Instalación

Ubuntu o Debian:

sudo gem install rails

Gemas

Las gemas son librerías y bibliotecas que podemos añadir a los proyectos de Ruby on Rails. Extienden su funcionalidad haciendo más sencillo el desarrollo. Hay muchas gemas disponibles en Internet y que puedes descargar fácilmente. La forma más sencilla de hacerlo es utilizar Bundler. En esta página puedes aprender a usarlo rápidamente: http://bundler.io/ Las gemas suelen estar acompañadas de una completa documentación en su página de Github.


Algunas de las gemas que pueden resultarte de utilidad son las siguientes (aunque hay muchas otras):


Devise Gestiona la autenticación, es decir que los usuarios se registren, inicien sesión, etc. https://github.com/plataformatec/devise


CanCan Restringe a qué recursos tiene acceso cada usuario (un usuario solo puede modificar su perfil y no el de otros usuarios, los administradores tienen acceso a más recursos, etc.) de forma sencilla y localizada en un solo fichero. https://github.com/ryanb/cancan


Kaminari Usada para paginación. https://github.com/amatsuda/kaminari


Paperclip Para adjuntar archivos a modelos, con la intención de que se traten de una manera similar a la que se tratan el resto de atributos. https://github.com/thoughtbot/paperclip


Ransack Permite crear formularios de búsqueda complejos y realizar filtrados de forma eficiente. https://github.com/activerecord-hackery/ransack


Nested Form Para formularios anidados. https://github.com/ryanb/nested_form


Axlsx Para la generación de Excels. https://github.com/randym/axlsx


Geocoder Para geolocalización (traducir direcciones a coordenadas geográficas y viceversa). https://github.com/alexreisner/geocoder


Browser Para detectar que tipo de dispositivo se está utilizando. https://github.com/fnando/browser


JavaScript

JavaScript también te puede ser de utilidad a la hora de realizar tu página web.

Para empezar lo más fácil es usar jQuery. jQuery es una biblioteca de JavaScript que facilita el desarrollo web.


El curso de jQuery de Code School es muy recomendable: https://www.codeschool.com/courses/try-jquery


El siguiente tutorial (en inglés) es muy completo y tiene muchos ejemplos: http://www.w3schools.com/jquery/


Véase también