0
有一个Rails 4.2.6应用程序,它有一个核心插件,通过alias_method_chain
扩展ActiveRecord reload
方法。
我需要编写另一个插件来扩展相同的基本功能,并保留核心插件添加的内容。
据我得到它,我可以叫alias_method_chain
只有一次,但我希望得到的东西是这样的:Rails:扩展alias_method_chain
class Klass
def foo
end
core_plugin:
base.send :alias_method_chain, :foo, :bar
my_plugin:
base.send :alias_method_chain, :foo, :baz
凡Klass.foo结果来电呼叫:baz
,:bar
和:foo
那么假设我无法编辑core_plugin,我的选择是什么?
那么,有点,但我已经'base.send:alias_method_chain,:foo,:酒吧',我不能改变没有打破目前的功能(或不知道如何) – svz
我不是确定你目前的要求,你可以发布所有的代码,以便我可以看。 – Ajaykumar
有问题的代码可以在这里找到:https://github.com/redmine/redmine/blob/3.3-stable/lib/plugins/acts_as_customizable/lib/acts_as_customizable.rb#L44 任务是创建另一个结构代理与所讨论的插件完全相同,但将数据存储在不同的数据库模式中。 – svz