0
我需要通过覆盖一个方法并添加一个我自己的插件来扩展一个插件。到目前为止,我已经遵循Strictly Untyped's指南,但我没有取得太大的成功。基本上,初始化文件夹中有一个文件从lib目录中加载扩展名。扩展一个rails插件
在我的初始化文件夹,我有这样一个文件:在
require 'amazon_extensions/question_generator_extendors.rb'
require 'amazon/webservices/mturk/question_generator.rb'
Amazon::WebServices::MTurk::QuestionGenerator.class_eval do
include Amazon::QuestionGeneratorExtendors
end
如果我打开,我想延伸,然后原班包括我的分机(亚马逊:: QuestionGeneratorExtendors)
然后lib /目录我有一个包含question_generator_extendors.rb一个amazon_extensions文件夹:
module Amazon
module QuestionGeneratorExtendors
def self.included(base)
base.class_eval {include InstanceMethods}
end
module InstanceMethods
def ask(*args)
case @type
when :Basic
askBasic(args.join)
when :Formatted
askFormatted(args.join)
end
end
def askFormatted(text)
id = "FormattedQuestion#{@questions.size+1}"
question = REXML::Element.new 'FormattedContent'
...
end
end
end
end
但是当我尝试和运行这个它仍然会ñ不承认我的变化。有什么想法吗?