使用带有多个触发器的Symbol#to_proc

时间:2016-01-12 21:06:39

标签: ruby-on-rails ruby

我有一些使用几种方法在ActiveRecord对象上运行的ruby代码,最终游戏是返回对象本身。我想使用两个方法,它们的返回值不是对象本身(布尔值)。我喜欢使用简写符号#to_proc语法,即

Object.tap(&:do_work)

是否可以通过多个过程?即。

Object.tap(&:do_work, &:do_more_work)

以上语法不起作用。这是可能的还是我必须做的事情:

Object.tap(&:do_work).tap(&:do_more_work)

1 个答案:

答案 0 :(得分:0)

如果您正在寻找一个好的架构解决方案,那么您需要为此实现FIFO堆栈。

或者你可以像上面提到的那样做:

Object.tap(&:do_work).tap(&:do_more_work)