如何在狂欢和宝石中应用全局控制器过滤器?

时间:2014-08-05 15:54:15

标签: ruby-on-rails ruby spree

我正在尝试在Spree 2.3+应用程序的所有控制器上应用around_filter

我得到了这个大部分工作但过滤器不适用于所有额外的gem控制器,例如spree_devise_auth gem的那些,它显然是从许多类继承的。

事实上,当我访问gem所呈现的任何控制器时,只会跳过过滤器。

# app/controllers/spree/base_controller_decorator.rb

Spree::BaseController.class_eval do
  prepend_around_filter :my_method

除了列举宝石中的每个控制器并执行class_eval之外,还有解决方案吗?

1 个答案:

答案 0 :(得分:0)

根据您的需要,Apartment是一个非常好的选择。前Spree社区经理Ryan Bigg写了一本书“Multitenancy with Rails And subscriptions too!”,我是一名测试评论员,非常好。对于Spree 2.4.0 at master是一项工作,包括Spree的多商店/多域名,您可以在https://github.com/spree/spree/pull/4888/files

看到