更改rails应用程序

时间:2016-02-29 10:23:34

标签: ruby-on-rails ruby

我有一个rails应用程序,我在gemfile中添加了一个开源gem。 gem中的大多数代码都可以按照我的要求正常工作,但我需要在gem代码中进行一些更改以使其更有用。

我没有在lib中包含gem代码,因为这意味着要保留比所需更多的代码。

如何在包含gem的同时重写一些代替gem代码的代码(仅适用于某些文件)?

1 个答案:

答案 0 :(得分:2)

我只是修补宝石并将这些补丁放在$RAILS_ROOT/lib/patches/内,然后在config/boot.rb中要求它们:

ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)

require 'bundler/setup' # Set up gems listed in the Gemfile.

# Apply patches
Dir[File.expand_path('../../lib/patches/*.rb', __FILE__)].each {|f| require f}