Rails引擎模型装饰器在一个单独的宝石

时间:2014-06-16 21:06:52

标签: ruby-on-rails ruby ruby-on-rails-4 gem

我有一个孤立的Rails引擎,Gemgento。它依赖于装饰器来为应用程序添加功能。这很好用,模型/控制器装饰器只需进入/app/decorators/models/gemgento/model_decorator.rb。

但是,我有一些宝石可以与Gemgento配对,并为特定的Magento扩展扩展它的功能。我需要在一个单独的gem中添加一个Gemgento模型装饰器。宝石已经需要Gemgento并使用它的一些API模型。

如何从单独的宝石中装饰引擎模型?

这是宝石 - https://github.com/gemgento/webtex_gift_cards

通常,在我的申请中,我会写:

Gemgento::Order.class_eval do
   def add_to_cart(product, quantity)
      if product.magento_type == 'gift_card'
         GemgentoWebtexGiftCards.add_to_cart(self.magento_quote_id, ....)
      else
         ...
      end
   end
end 

如何在宝石中完成?

0 个答案:

没有答案