在Rails 3中使用Monkey Patch的首选方法是什么?
我只想在String类中添加一个方法。我更关注文件的放置位置。
答案 0 :(得分:72)
初始化程序目录是收集所有这些小碎片的好地方。由于我倾向于使用核心扩展,但我喜欢在其中创建一个名为“extensions”的文件夹并将其全部丢弃。
因此,请尝试/config/initializers/string_extension.rb
或/config/initializers/extensions/string.rb
或类似的内容。无论哪种方式,你可以在以后忘记它们--Rails会为你要求它们,所以你不需要自己做。
答案 1 :(得分:0)
如果它是特定于类的,您可以在您需要的类中重新定义该方法。否则,它完全取决于您要使用字符串方法的应用程序的哪个部分。 作为打开类以重新定义方法的示例:http://codepad.org/Cj1LHmQj 但是,你可能已经知道你可以做到这一点。