====== Instalar Ruby on Rails en Windows ======
===== Las Piezas que necesitas =====
* Ruby
* RubyGems
* Rails (Gem)
* Un motor de Base de Datos
===== Instalar Ruby y RubyGems =====
Obtener la ultima versión [[http://rubyforge.org/frs/?group_id=167|One-Click Ruby Installer]], la versión actual es 1.8.6-26. Ejecuta este instalador, y selecciona todos las opciones por default. Esto instalar Ruby en C:\ruby, al igual que RubyGems. el README al final de la instalación te enseñara todas las versiones que han sido instaladas. Tu necesitas actualizar gems al terminar la instalación con el siguiente comando:
$ gem update --system
Antes de continuar, checa si c:\ruby\bin se encuentra en tu PATH mediante el comando "path" en la consola. Esto asegurará de que usted puede ejecutar ruby.exe desde cualquier lugar (el cual tu podrás ejecutar desde la raíz de tu proyecto). Si por alguna razón no se encuentra el comando, tu deberás de añadirlo (como se realiza esto dependerá completamente de la versión de Windows que tu tengas instalado).
===== Instalar Rails =====
Rails es fácil de instalar ahora, gracias a RubyGems. Simplemente use gem para instalarlo desde un intérprete de comandos:
$ gem install rails
Esto tomará un momento largo, así que vaya por un snack. Al principio puede que parezca como si no estuviese haciendo nada, así que no se preocupe de que está atascado. Esto instalará todo el código, código de pruebas, documentación ri, y documentación RDoc para Rails
===== Instalar un motor de Base de Datos =====
Rails es totalmente DB-agnóstico, así que describiremos cómo instalar dos de los motores de base de datos más populares: SQLite y MySQL.
==== Como instalar SQLite ====
SQLite es la base de datos por default que Rails buscara para utilizar y es un motor de Base de Datos ligero e increíble para utilizar dentro de la fase de desarrollo. Y es de la siguiente forma como nosotros podemos instalar SQLite3.
Necesitamos dos archivos de [[http://www.sqlite.org/download.html|SQLite download page]]:
* the [[http://www.sqlite.org/sqlite-3_6_10.zip|SQLite Command Line Tool]]
* the [[http://www.sqlite.org/sqlitedll-3_6_10.zip|SQLite DLL]]
Descomprime estos y coloca los tres archivos que se descomprimieron en tu directorio ruby\bin (usualmente en C:\ruby\bin). ahora instala el gem de sqlite3-ruby con el siguiente comando:
$ gem install sqlite3-ruby -v 1.2.3
==== Como instalar MySQL ====
Descarga [[http://dev.mysql.com/downloads/mysql/5.1.html#downloads|MySQL Community Server]] y ejecuta el instalador. Si tu también realizas programación con PHP, checa WAMP para una instalación sencilla de igual forma.
Para utilizar MySQL en versiones de Rails mayores a la 2.1, entonces necesitaras también el adaptador de MySQL y para instalarlo ejecuta el siguiente comando:
$ gem install mysql
Ya que MySQL no es la base de datos por default, tendremos que editar el archivo database.yml posteriormente.
===== Crear nuestro primer proyecto =====
Crear un proyecto en Rails es asunto de una-linea (desde la consola de comandos):
$ rails nombredelproyecto
Esto construirá un directorio, en el cual se crea inicialmente el esqueleto en blanco de tu proyecto en Rails. para poder ver tu proyecto nuevo en acción, navega a la raíz de tu proyecto y ejecuta script/server:
$ cd nombredelproyecto
$ ruby script\server
Ahora, dentro de tu navegador ve a la dirección http://localhost:3000/ , y tu deberás de ver la pagina por default de Rails con el mensaje de "Welcome Aboard".
Automáticamente Rails utiliza como motor de base de datos SQLite3 y crea una base de datos en el directorio de db. si revisamos tu archivo de database.yml (dentro de \config), tu podrás observar las configuraciones para las bases de datos de development, test, y production. Cada una de ellas deberá lucir como el siguiente ejemplo:
development:
adapter: sqlite3
database: db/development.sqlite3
pool: 5
timeout: 5000
Esto quiere decir que dentro del modo de desarrollo (development) en Rails esta utilizando el adaptador de sqlite3 para comunicarse con la base de datos en db\development.sqlite3. Esto esta bien dentro del desarrollo, pero en producción (production), tu probablemente preferiras algo mas robusto. Tu puedes cambiar cualquiera de las faces para utilizar cualquier otro adaptador para un motor de base de datos diferente. A continuación se muestra un ejemplo de la configuración a utilizar para el motor de MySQL:
development:
adapter: mysql
database: myprojectname_development
username: devrailsuser
password: devrailspassword
host: localhost
==== Otros recursos ====
[[http://akitaonrails.com/2009/1/13/the-best-environment-for-rails-on-windows|Akita on Rails suggested environment for Rails on Windows]]