Laravel 如果有新的多对多关系,请保存

Laravel 如果有新的多对多关系,请保存,laravel,eloquent,many-to-many,Laravel,Eloquent,Many To Many,我有两个模型:事件和声音云 这两种关系在Laravel中都被定义为多对多关系,并且运行良好 通过执行此操作,我正在保存soundcloud并填充透视表事件\u soundcloud foreach ($data as $artist => $url) { $soundcloud = Soundcloud::firstOrNew(['artist_name' => $artist, 'link' => $url]); $event->soundclouds

我有两个模型:事件和声音云

这两种关系在Laravel中都被定义为多对多关系,并且运行良好

通过执行此操作,我正在保存soundcloud并填充透视表事件\u soundcloud

foreach ($data as $artist => $url) {
     $soundcloud = Soundcloud::firstOrNew(['artist_name' => $artist, 'link' => $url]);
    $event->soundclouds()->save($soundcloud);
}
该函数每10分钟调用一次,每次将相同的记录添加到数据透视表时调用一次

是否有一种方法可以做同样的事情,但只在pivot表不存在的情况下才在pivot表中添加记录?
谢谢你

以下是我为让它工作所做的。我想你不能一步到位

 $soundcloud = Soundcloud::firstOrNew(['artist_name' => $artist, 'link' => $url]);
 $soundcloud->save();
 $event->soundclouds()->sync([$soundcloud->id], false);