Я хотел бы переопределить метод gem (расширение Jekyll), который выглядит так:Как обезьяна-патч расширения Jekyll или плагина?
Файл: lib/jekyll-amazon/amazon_tag.rb
.
module Jekyll
module Amazon
class AmazonTag < Liquid::Tag
def detail(item)
...
end
end
end
end
Liquid::Template.register_tag('amazon', Jekyll::Amazon::AmazonTag)
Я поставил код с той же структурой в моем проекте в папке
config/initializers/presentation.rb
_plugins/presentation.rb
. Если я изменил имя метода detail
на новое имя, оно работает, но я не могу заставить его переопределить имя detail
. Что я сделал не так?
(Примечание. В версии 0.2.2 от Джекил-амазонки камень, метод detail
является частным, и я не изменил это локально, так что этот метод уже не частный)
Похоже, нам повезло: jekyll-amazon теперь поддерживает [пользовательские шаблоны] (https://github.com/tokzk/jekyll-amazon/issues/6). – approxiblue
Да, но я все еще хочу знать (для моих собственных знаний), как переопределить оригинальный камень. –