如何为狂欢促销定义新活动?

aan*_*uso 0 ruby-on-rails spree

我一直在阅读关于Spree促销的几乎所有内容,但我没有找到定义新促销活动的方法.

我只找到如何定义动作和规则,但没有定义事件.我已经知道它使用ActiveSupport :: Notifications但我找不到通过它的方法.

促销活动触发选择

gma*_*all 5

这有点难.您需要做的第一件事是在您的病情发生时开始事件. fire_event在公共控制器助手代表,为的ActiveSupport ::通知.

然后你需要装饰Spree :: Promotion来添加一个像这个代码的新激活器,它会添加优惠券代码激活器.

此代码订阅了spree.*事件,并将基于激活器触发相应的事件.它在相应的类上调用activate方法,您需要在装饰的促销中覆盖它.在默认的提升激活做到这一点,所以你需要扩展的代码做任何你想在你的活动.

希望能为您提供一个入门的地方.