gpt4 book ai didi

php - 使用外键复制 - Laravel

转载 作者:行者123 更新时间:2023-11-29 12:40:42 25 4
gpt4 key购买 nike

我正在尝试复制数据库中的某些数据,并且按照以下链接中的步骤操作。 Laravel 4: replicate to table但是,我需要仅使用外键复制一些其他数据。我尝试使用 find() 方法来获取我的数据,但没有返回任何内容。where 子句返回我的数据,但以数组的形式,但不被接受复制方法。

知道我做错了什么以及如何复制我的其他数据吗?!

代码:

$item = Cv::find($cv_id);
// return $item;
$clone = $item->replicate();
unset($clone['created_at'],$clone['updated_at']);
$data = json_decode($clone, true);
Cv::create($data);

//Skills
// return $cv_id;
$skills = Skill::where('cv_id', $cv_id);
$cloneSkills = $skills->replicate();
unset($cloneSkills['created_at'],$cloneSkills['updated_at']);
$skillData = json_decode($cloneSkills,true);
Skill::create($skillData);

最佳答案

对于复制技能,您可能应该使用:

$skills = Skill::where('cv_id', $cv_id)->get();

foreach ($skills as $skill) {

$cloneSkill = $skill->replicate();
unset($cloneSkill['created_at'], $cloneSkill['updated_at']);
$skillData = json_decode($cloneSkill, true);
Skill::create($skillData);
}

您需要使用get()来获取所有数据,并且由于$skills是Collection,因此您需要使用循环来复制每个技能。

关于php - 使用外键复制 - Laravel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26160208/

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