tutorial rails que ejemplos curso aprender ruby-on-rails ruby ruby-on-rails-3

que - En Ruby on Rails, para extender la clase String, ¿dónde debería colocarse el código?



ruby on rails tutorial (3)

Las pautas en Rails 3.1 es el camino a seguir:

http://guides.rubyonrails.org/plugins.html#extending-core-classes

Si sigues la convención predeterminada no necesitarás jugar con una configuración de inicializador.

Si en Ruby on Rails, necesito agregar un método llamado

class String def capitalize_first # ... end end

y se pregunta a dónde debería ir el archivo? (¿qué directorio y nombre de archivo, y se necesita algún código de inicialización?) Esto es para un proyecto de Rails 3.0.6.


Podrías hacerlo en config / initializers / string.rb

class String def capitalize_first # ... end end

debe ser todo lo que necesita (además de un reinicio de la aplicación).


Siempre agrego un directorio core_ext en mi directorio lib .

Crear e initializer para cargar las extensiones personalizadas (por ejemplo: config/initializers/core_exts.rb ). Y agrega la siguiente línea:

Dir[File.join(Rails.root, "lib", "core_ext", "*.rb")].each {|l| require l }

y tenga su extensión como:

lib/core_ext/string.rb

class String def capitalize_first # ... end end