[英]How do I include a ruby gem's code into main rails project?
假设我需要在rails项目中更改我需要的某个ruby gem的功能。 我想将ruby gem的所有内容放在主项目中。
这可能吗? 有替代方法吗?
谢谢
你可以通过“monkeypatching”具体方法来做到这一点。 要执行此操作,您需要创建一个覆盖您要修改的方法的初始化程序。 例如,创建config/initializers/monkeypatch.rb
并覆盖该方法:
class String
def inspect
puts "Im monkeypatched!"
end
end
然后,当您创建一个字符串并调用inspect时,您将看到该方法已被修补。 另外你应该小心使用monkeypatching因为它可能有一些不必要的副作用,特别是当你修补非常基本的类,如String或Fixnum类。
另一种选择是fork你正在编写的gem,更新它并保存在你的存储库中,然后在你的Gemfile中引用它。
当然你可以复制这个gem的整个来源并把它放在app里面的专用文件夹中(lib / folder_for_your_gem)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.