2017-06-20 78 views
0

我目前在CakePHP 3中有一个名为Tickets的表,它有几个标志,如head_ticket和latest_ticket。基本上,当我编辑记录时,我创建一个新行(一个uuid字段保持记录链接在一起),并将latest_ticket标志设置为true,因为此行包含最新信息。CakePHP 3:修改查找数据

我想知道的是,有一种方法可以在find中找到所有将head_ticket设置为true的记录,但更新即时返回的机票数据列与同时将latest_ticket标志设置为true的行中的最新数据?这几乎就像一个一个afterFind方案,但其中一个已经在CakePHP中被弃用3

感谢

回答

1

the migration guide,它包含了你想要的回答你的问题,可能更多的东西,从2.x的未来时,应知道:

使用ORM的Modifying Results with Map/Reduce功能,让您从您的结果,这就是一个afterFind回调经常被用于其他用途的情况下建立汇总数据。

有关Map/Reduce的文档包含基于某个筛选器的结果集合的示例,我认为这几乎是您想要的。

+0

感谢您的链接,我会进一步调查。 –