Si on Ruby on Rails, je dois ajouter une méthode appelée
class String
def capitalize_first
# ...
end
end
et se demandent où le fichier doit aller? (quel répertoire et nom de fichier, et un code d'initialisation est-il nécessaire?) Ceci est pour un projet Rails 3.0.6.
J'ajoute toujours un core_ext
dans mon répertoire lib
.
Créez un initialiseur pour charger les extensions personnalisées (par exemple: config/initializers/core_exts.rb
). Et ajoutez-y la ligne suivante:
Dir[File.join(Rails.root, "lib", "core_ext", "*.rb")].each {|l| require l }
et avoir votre extension comme:
lib/core_ext/string.rb
class String
def capitalize_first
# ...
end
end
Vous pouvez le faire dans config/initializers/string.rb
class String
def capitalize_first
# ...
end
end
devrait être tout ce dont vous avez besoin (en plus d'un redémarrage de l'application).
Les directives de Rails 3.1 est la voie à suivre:
http://guides.rubyonrails.org/plugins.html#extending-core-classes
Si vous suivez la convention par défaut, vous n'aurez pas besoin de jouer avec une configuration d'initialisation.