【发布时间】:2009-12-17 22:24:08
【问题描述】:
我们正在使用 Ruby on Rails 创建一个系统,并且我们希望能够为我们的用户提供一些关于在某些预定义触发器发生时可能发生的通知和操作的控制权。此外,我们计划迭代导入的数据,并允许我们的用户根据这些数据配置一些操作和触发器。
让我举几个例子来更好地说明:
Trigger - Action
------------------------------------------------------------------------
New Ticket is Created - User receives an e-mail
New Ticket Parsed for Keyword 'evil' - Ticket gets auto-assigned to a
particular group
User Missed 3 Meetings - A ticket is automatically created
理想情况下,我们希望某些触发器是可配置的。例如,最后一个示例可能让您配置在操作发生之前错过了多少次会议。
我想知道什么模式可以帮助我在 Ruby on Rails 中处理这种事件/回调情况。此外,触发器和动作可能是可配置的,但它们将是预定义的;那么,它们应该被硬编码还是存储在数据库中?
任何想法将不胜感激。谢谢!
更新 1: 看了之后发现 SO 上的徽章系统有些相似,基于这些标准,我想做这个动作。它略有不同,但我希望能够轻松添加新标准和操作并将它们呈现给用户。对此有什么想法吗?
【问题讨论】:
标签: ruby-on-rails design-patterns triggers callback