MongoDB建模/查询子集

时间:2012-12-28 22:44:43

标签: mongodb

所以我正在尝试实现一个模型来触发可能在我的rails应用程序中发生的各种事件。

我希望它做的一些示例代码。

  Action.trigger_on("channel1")

以上代码将由以下内容触发:

  Trigger.trigger("channel1")

但是如果我只想要为一组给定的参数触发Action,我可以传递一个哈希

  Action.trigger_on("channel1", {important: true, is_transfer: true})

上述动作只会由channel1上“channel1”上的内容触发,并且必须是important: true,并且它必须是is_transfer: true

因此,它不会触发它,因为它没有is_transfer:

  Trigger.trigger("channel1", {important: true})

但这会

  Trigger.trigger("channel1", {important: true, is_transfer: true})

现在,触发器是一个包含这些参数的“属性”子文档的文档。如何找到与所有参数的子集匹配的所有触发器?或者可能有更好的方法来改进这种建模?

执行此操作的愚蠢方法是找到与通道匹配的所有触发器,然后通过它们进行迭代以检查当前触发器是否具有所有所需的属性....

编辑:另外,我想重要的是要注意一个动作的触发不是时间关键。

0 个答案:

没有答案