Rails:适当/传统的方式来处理通知

时间:2013-05-11 16:00:22

标签: ruby-on-rails

我已经构建了一个Stripe SaaS应用程序,有点像Byron Bowerman的stripe-example

来自Stripe的通知称为“webhooks”,包括付款是成功还是失败等信息。在我的应用程序中,stripe-event gem接收它们,然后将信息传递给Webhook模型以保存在数据库中。

我想使用这些事件来触发操作:

  • 向用户发送电子邮件
  • 更新用户模型

问题是哪个班级应该采取这些行动,以及应该如何通知?

有几个选择:

1)在Webhook模型中

很容易,但感觉不在这个课程的责任范围内。

2)Webhook Observer(s)

一个观察者,或不同行动的独立观察者?

3)Rails通知

Webhook模型每次收到webhook时都会发出ActiveSupport::Notification。这可以由应用程序中任何位置的类订阅。如果我去了这条路线,那么在User模型,UsersController或其他地方执行此操作是否合适?

我对这种方法的担心是,在他的railscast on notifications中,Ryan Bates建议“通知最适合用于日志记录和不修改应用程序核心行为的代码。”

4)......?

你有什么建议?

0 个答案:

没有答案