gpt4 book ai didi

php - 克隆实体和 CakePHP 3 中的所有相关实体

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:04:55 27 4
gpt4 key购买 nike

在我的 CakePHP 3 应用程序中,我有一个稍微复杂的实体树,我需要克隆和保存它。

结构的根是一个问卷,一个问卷有很多问题,每个问题有很多字段,等等(更深入)。现在我希望用户能够通过复制旧问卷来定义新问卷。然后他们可以根据需要进行更改。

我可以通过使用 $questionnaire->$this->Questionnaires->get($id) 和适当的 contain 来获取我需要复制的内容的转储领域。有没有一种聪明的方法可以将其保存为一堆新实体,同时保留它们之间的数据和结构?

最佳答案

我认为最好的方法是遵循工作流程:

  1. 获取你想要克隆的对象
  2. 检查集合并删除所有 ID
  3. 转换为数组并在 $this->Questionnaires->newEntity($arrayData, ['associated' => ['Questions', '...']]);
  4. 现在保存新实体以及您要保留的所有相关数据

据我所知,在 Cake 3 中没有“更聪明”的方法来克隆具有关联的实体 :-)

关于php - 克隆实体和 CakePHP 3 中的所有相关实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33633447/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com