gpt4 book ai didi

php - Laravel 插入一对多关系

转载 作者:行者123 更新时间:2023-11-28 23:16:44 25 4
gpt4 key购买 nike

我有一对多关系的 Post 表和 images 表。

Post Model Code

public function images()
{
return $this->hasMany('App\PostImage');
}

我从用户那里获取了 3 张图片,我想将它们与帖子 ID 一起插入到图片表中。

For example

firstImage.jpg 帖子 ID 1

secondImage.jpg 帖子 ID 1

thirdImage.jpg 帖子 ID 1

Question is

如何在三列中同时插入三张id为1的图片

What I have tried

我做了一个 for 循环,在表中插入 3 次,但我知道这不是一个好的做法,这里是代码。

for($x = 0; $x < 3; $x++) {
$image = new PostImage;
$image -> post_id = $ad -> id;
$image -> image = $images_name[$x];
$image -> save();
}

最佳答案

如果您只需要插入 3 张图像,则此方法没有任何问题。但是,如果您想插入数百张图片,我建议您使用 insert() 方法,它只会创建一个查询,而不是创建 100 个查询来插入 100 张图片:

$array = [];
foreach ($images_name as $name) {
$array[] = ['post_id' => $ad->id, 'image' => $name];
}
PostImage::insert($array);

关于php - Laravel 插入一对多关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43545780/

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