Introducción a Ruby on Rails

Capítulo 3. Creando un nuevo proyecto

La mejor forma de usar esta guía es seguir cada paso tal y como se muestra. No hemos ahorrado ninguna línea de código en las explicaciones, así que puedes seguirla literalmente paso a paso. Ver el código completo.

Al seguir esta guía, vas a crear un proyecto Rails llamado blog, que es un motor de blogs muy sencillo. Antes de que puedas comenzar a crear la aplicación, asegúrate de tener Rails instalado.

Truco Los ejemplos que se muestran a continuación usan el carácter $ para representar a la consola de comandos de los sistemas operativos basados en UNIX. Si estás usando Windows, la línea de comandos se verá como c:\>.

3.1. Instalando Rails

Lo primero que debes hacer es abrir una consola de comandos. En Mac OS X eso significa abrir la aplicación Terminal.app. En Windows pincha sobre el menú de inicio y elige la opción Ejecutar y teclea cmd.exe.

Las líneas que empiezan por $ son los comandos que debes ejecutar en la consola. Lo primero es comprobar que tienes instalada alguna versión reciente de Ruby:

$ ruby -v
ruby 2.0.0p353

Truco Existen varias herramientas para instalar Ruby en tu sistema operativo. Los usuarios de Windows pueden utilizar el instalador de Rails, mientras que los usuarios de Mac OS X pueden usar Tokaido.

Además, tu sistema debe contar con SQLite 3 instalado correctamente. Para comprobar si es así, ejecuta el siguiente comando:

$ sqlite3 --version

Una vez comprobado que tienes tanto Ruby como SQLite 3, para instalar Rails, usa el comando proporcionado por RubyGems gem install:

$ gem install rails

Para verificar que tu instalación esté correcta, deberías poder ejecutar lo siguiente:

$ rails --version

Si dice algo como "Rails 4.1.1", estás listo para continuar.

3.2. Creando la aplicación de Blog

Rails viene con un número de generadores que están diseñados para hacer tu ciclo de desarrollo más fácil. Uno de esos es el generador de nuevas aplicaciones, que crea la estructura base de una aplicación Rails, por lo que no tienes que escribirla por ti mismo.

Para usar este generador, abre la consola de comandos, navega hacia el directorio en donde tienes permiso para crear archivos, y ejecuta:

$ rails new blog

Esto creará una aplicación Rails llamada Blog en un directorio llamado blog e instalará las dependencias (gemas) que están mencionadas en el Gemfile usando el comando bundle install.

Truco Puedes ver todas las opciones que el generador de nuevas aplicaciones provee, ejecutando rails new -h.

Después de crear la aplicación, entra a su directorio para continuar trabajando directamente en la aplicación:

$ cd blog

El comando rails new blog que acabamos de ejecutar, creó una carpeta en tu directorio de trabajo llamado blog. El directorio blog tiene un número de archivos autogenerados y carpetas que conforman la estructura de una aplicación Rails.

La mayoría del trabajo en este tutorial se llevará a cabo en la carpeta app/, así que primero hagamos un repaso rápido al propósito de cada archivo y carpeta de Rails:

Archivo/Carpeta Propósito
app/ Contiene los controllers, models, views, helpers, mailers y assets para tu aplicación. Te centrarás en esta carpeta por el resto de esta guía.
config/ Configura las reglas de ejecución de la aplicación, rutas, base de datos y más. Este tema es cubierto en mayor detalle en Configuring Rails Applications.
config.ru Configuración Rack para servidores basados en Rack usados para iniciar la aplicación.
db/ Contiene el esquema actual de tu base de datos, así como las migraciones de la base de datos.
doc/ Documentación detallada de tu aplicación.
Gemfile Gemfile.lock Estos archivos te permiten especificar qué dependencias de gemas son necesitadas para tu aplicación Rails. Estos archivos son usados por la gema Bundler, ver Sitio web de Bundler
lib/ Módulos extendidos para tu aplicación.
log/ Archivos de Log de tu aplicación.
public/ La única carpeta vista por el mundo tal como es. Contiene los archivos estáticos y assets compilados.
Rakefile Este archivo localiza y carga tareas que pueden ser ejecutadas desde la línea de comandos. La lista de tareas son definidas a través de los componentes de Rails. En vez de cambiar el Rakefile, deberías agregar tus propias tareas, añadiendo archivos al directorio lib/tasks de tu aplicación.
README.rdoc Este es un breve manual de instrucciones para tu aplicación. Deberías editar este archivo para comunicar a otros lo que tu aplicación hace, cómo configurala y demás.
script/ Contiene el script de Rails que inicia tu aplicación y contiene otros scripts usados para deployar o correr tu aplicación.
test/ Pruebas unitarias, fixtures y otras pruebas. Éstos son cubiertos en Testing Rails Applications.
tmp/ Archivos temporales (como archivos de caché, PID y archivos de sesiones).
vendor/ Lugar para código de terceros. En una típica aplicación Rails, ésta incluye librerías y plugins.