#現状
Guide/Place/Overviewという3つのモデルが存在しており、PlaceとOverviewがGuideの子モデルというイメージです。
現状、一つの更新ボタンで上記の3つのモデルが更新される認識です。
#問題
ここで本題なのですが、更新時に前のデータが削除されていないのでデータを書き換えても更新ではなく追加されている状態です。
リレーション先のモデル(collection)の更新はどのように行えば良いですか?
どなたかご教授いただけると助かります。
controller
1$guide = $this->guide_model::find($id); 2$guide->fill($request->guide)->save(); 3 4foreach ($request->overview as $overview) { 5 foreach ($guide->overviews as $relation_overview) { 6 if($guide->overviews){ 7 $relation_overview->fill($overview)->save(); 8 }else{ 9 $guide->overviews()->save($overview); 10 } 11 } 12} 13 14foreach ($request->place as $place) { 15 foreach ($guide->places as $relation_place) { 16 if($guide->places){ 17 $relation_place->fill($place)->save(); 18 }else{ 19 $guide->places()->create($place); 20 } 21 } 22}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。