如果是在Ruby on Rails上,我需要添加一个名为
class String
def capitalize_first
# ...
end
end
想知道文件应该放到哪里?(哪个目录和文件名,以及是否需要任何初始化代码?)这是针对Rails 3.0.6项目的。
发布于 2011-04-14 03:33:35
我总是在我的lib
目录中添加一个core_ext
目录。
创建用于加载自定义扩展的initializer (例如:config/initializers/core_exts.rb
)。并在其中添加以下行:
Dir[File.join(Rails.root, "lib", "core_ext", "*.rb")].each {|l| require l }
并让您的扩展名如下:
lib/core_ext/string.rb
class String
def capitalize_first
# ...
end
end
发布于 2011-04-14 03:33:14
您可以在config/initializers/string.rb .rb中执行此操作
class String
def capitalize_first
# ...
end
end
这应该是你所需要的(除了应用程序重启)。
发布于 2011-11-16 06:15:45
Rails 3.1中的指导方针是可行的:
http://guides.rubyonrails.org/plugins.html#extending-core-classes
如果你遵循默认的约定,你就不需要修改初始化器配置了。
https://stackoverflow.com/questions/5654517
复制相似问题