【问题标题】:CakePHP 3 : Modifying Find DataCakePHP 3:修改查找数据
【发布时间】:2017-06-20 21:58:38
【问题描述】:

我目前在 CakePHP 3 中有一个名为 Tickets 的表,其中包含一些标志,例如 head_ticket 和 latest_ticket。基本上,每当我编辑一条记录时,我都会创建一个新行(一个 uuid 字段将记录链接在一起)并将 latest_ticket 标志设置为 true,因为该行包含最新信息。

我想知道的是,有没有一种方法可以在 find 中执行某些操作,我可以在其中获取所有将 head_ticket 设置为 true 的记录,但更新即时返回的 head ticket 数据列将 latest_ticket 标志同时设置为 true 的行中的最新数据?这几乎就像 afterFind 场景,但在 CakePHP 3 中已被弃用

谢谢

【问题讨论】:

    标签: cakephp cakephp-3.0


    【解决方案1】:

    阅读the migration guide,它包含您的问题的答案,以及来自 2.x 时您想要和应该知道的更多内容:

    使用 ORM 的 Modifying Results with Map/Reduce 功能,您可以根据结果构建聚合数据,这是 afterFind 回调经常用于的另一个用例。

    关于 Map/Reduce 的文档包含一个基于某些过滤器的结果集聚合示例,我认为这正是您想要的。

    【讨论】:

    • 感谢您的链接,我会进一步调查。
    猜你喜欢
    • 2015-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-24
    相关资源
    最近更新 更多