tutorial rubyonrails rails que guide ejemplos descargar curso ruby-on-rails ruby-on-rails-2

ruby on rails - rubyonrails - método indefinido `source_index ''para Gem: Module(NoMethodError)



ruby on rails tutorial (3)

Acabo de encontrarme con este problema al mismo tiempo que trato de actualizar una aplicación anterior de Rails de REE 1.8.7 a 1.9.3-p385. Curiosamente, Ruby 1.9.3-p327 funciona bien. De lo que se trataba era de que ruby-1.9.3-p385 había instalado RubyGems versión 2.0.2 para mí, y 1.9.3-p327 tenía instalado RubyGems v1.8.23.

Gem.source_index ha quedado obsoleto por un tiempo, pero dado que Rails 2.3 no está recibiendo ninguna actualización, excepto parches de seguridad críticos, esto nunca será reparado. RubyGems v2.0 finalmente eliminó ese método. rubygems a cualquier versión de rubygems anterior a 2.0.0, como 1.8.25 para recuperar la funcionalidad por ahora. Puede obtener una versión compatible usando gem update --system 1.8.25 .

Como un aspecto muy importante, Rails 2.3.5 necesita actualizarse a un mínimo de 2.3.17. Existen vulnerabilidades de seguridad críticas que lo abren a algunos ataques muy desagradables. A largo plazo, la actualización a 3.x necesita considerarse una necesidad muy fuerte.

Estoy ejecutando una aplicación Rails 2.3.5 y al ejecutar el script / servidor me muestran lo siguiente:

./script/../config/../vendor/rails/railties/lib/rails/gem_dependency.rb:21:in `add_frozen_gem_path'': undefined method `source_index'' for Gem:Module (NoMethodError) from ./script/../config/boot.rb:60:in `load_initializer'' from ./script/../config/boot.rb:44:in `run'' from ./script/../config/boot.rb:17:in `boot!'' from ./script/../config/boot.rb:123 from script/server:2:in `require'' from script/server:2

Si comento la línea 60 en boot.rb (Rails :: GemDependency.add_frozen_gem_path) y ejecuto el script / servidor, obtengo esto:

=> Booting WEBrick => Rails 2.3.5 application starting on http://0.0.0.0:3000 ./script/../config/../vendor/rails/railties/lib/rails/gem_dependency.rb:21:in `add_frozen_gem_path'': undefined method `source_index'' for Gem:Module (NoMethodError) from ./script/../config/../vendor/rails/railties/lib/initializer.rb:298:in `add_gem_load_paths'' from ./script/../config/../vendor/rails/railties/lib/initializer.rb:132:in `process'' from ./script/../config/../vendor/rails/railties/lib/initializer.rb:113:in `send'' from ./script/../config/../vendor/rails/railties/lib/initializer.rb:113:in `run'' from /home/developer/bigpink/config/environment.rb:13 from /home/developer/bigpink/vendor/rails/activesupport/lib/active_support/dependencies.rb:156:in `require'' from /home/developer/bigpink/vendor/rails/activesupport/lib/active_support/dependencies.rb:156:in `require'' from /home/developer/bigpink/vendor/rails/activesupport/lib/active_support/dependencies.rb:521:in `new_constants_in'' from /home/developer/bigpink/vendor/rails/activesupport/lib/active_support/dependencies.rb:156:in `require'' from /home/developer/bigpink/vendor/rails/railties/lib/commands/server.rb:84 from script/server:3:in `require'' from script/server:3

Entonces, no estoy seguro de qué hacer. Esperando poder obtener ayuda rápida. ¡Gracias!



para usuarios de rvm,

rvm install rubygems 1.8.2 --force