tutorial software rails ejemplos descargar curso caracteristicas ruby-on-rails

ruby on rails - software - Especificando la versión de los rieles para usar al crear una nueva aplicación



ruby on rails tutorial (6)

Aquí está el comando que utilizo normalmente:

rails _version_ new application_name

por ejemplo rails _2.1.0_ new my_app

Aquí está la lista de todas las versiones de rieles disponibles hasta el momento:

http://rubygems.org/gems/rails/versions

Tengo dos versiones de rieles (2.1.0 y 2.2.2) instaladas en mi computadora.

Cuando creo una nueva aplicación, ¿es posible especificar que deseo usar la versión anterior (2.1.0)?


Como lo señaló correctamente @mikej para Rails 5.0.0 o superior , debe seguir estos pasos:

Cree un directorio para su aplicación junto con un Gemfile para especificar su versión de Rails deseada y deje que Bundler instale las gemas dependientes:

$ mkdir myapp $ cd myapp $ echo "source ''https://rubygems.org''" > Gemfile $ echo "gem ''rails'', ''5.0.0.1''" >> Gemfile $ bundle install

Verifique que se haya instalado la versión correcta de los rieles: $ bundle exec rails -v

Ahora cree su aplicación, deje que Rails cree un nuevo Gemfile (o sobrescriba el existente usando la --force ) y en lugar de instalar el paquete ( --skip-bundle ) actualícelo manualmente:

$ bundle exec rails new . --force --skip-bundle

Si verifica la entrada de rieles en Gemfile , debería ser así:

gem ''rails'', ''~> 5.0.0'', ''>= 5.0.0.1''

Debe actualizarlo a la versión exacta necesaria para la aplicación:

gem ''rails'', ''5.0.0.1''

Ahora, el paso final:

$ bundle update


Encontré here una opción no documentada para crear una nueva aplicación utilizando una versión anterior de Rails.

rails _2.1.0_ new myapp


Estaba teniendo problemas para usar rails _version_ new application_name (el proyecto resultante aún se generó para la versión más reciente de Rails instalada).

Después de un poco de excavación encontré un artículo de Michael Trojanek con un enfoque alternativo. Esto funciona mediante la creación de una carpeta con un Gemfile que especifica la versión deseada de Rails y luego usa bundle exec rails... para que Bundler se encargue de ejecutar la versión apropiada de rails . Por ejemplo, para hacer un nuevo Rails 4.2.9 proyectos, los pasos son:

mkdir myapp cd myapp echo "source ''https://rubygems.org''" > Gemfile echo "gem ''rails'', ''4.2.9''" >> Gemfile bundle install bundle exec rails new . --force --skip-bundle bundle update


Puede generar el esqueleto con cualquiera de las versiones y requerir el que desea en config/environment.rb :

# Specifies gem version of Rails to use when vendor/rails is not present RAILS_GEM_VERSION = ''2.1.2'' unless defined? RAILS_GEM_VERSION

o use el comando "rieles" de la versión que desee de todos modos.


También deberías echar un vistazo a "congelar" tus gemas Rails en la aplicación. Esto ayuda mucho con la implementación, especialmente en entornos de alojamiento compartido.

Simplemente cambie la variable RAILS_GEM_VERSION en config/environment.rb y emita la tarea de rake freeze:

rake rails:freeze:gems