2017-02-26 26 views
0

私は2つのモデルがあります:イベントとサウンドクラウド。新しい多対多の関係に保存するLaravel Eloquent

両方ともLaravelで多対多の関係であると定義されており、正常に動作しています。

は、私は10分ごとに呼ばれているこの

foreach ($data as $artist => $url) { 
    $soundcloud = Soundcloud::firstOrNew(['artist_name' => $artist, 'link' => $url]); 
    $event->soundclouds()->save($soundcloud); 
} 

この関数を実行して、てSoundcloud、人口ピボットテーブルevent_soundcloudを保存していますし、毎回同じレコードがピボットテーブルに追加されます。

すでに存在しない場合にのみピボットテーブルにレコードを追加する方法と同じことを行う方法はありますか? ありがとうございました

答えて

0

ここで私はそれを動作させるためにしました。私はあなたが1つのステップでそれをすることができないと思います。

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