我有2个models Tour.php

public function Itinerary()
{
    return $this->hasMany('App\Itinerary', 'tour_id');
}


行程.php
public function tour()
{
    return $this->belongsTo('App\Tour', 'tour_id');
}

旅游表:
id|title|content
行程表:
id|tour_id|day|itinerary
我使用vue js为day创建或添加和删除输入字段,并动态规划。并使用tour.store方法中的以下代码插入itineraries表:
    $count = count($request->input('day'));
$temp_day        = $request->input('day');
$temp_itinerary  =   $request->input('itinerary');

for($i = 0; $i < $count; ++$i)
{

    $itinerary = new Itinerary;
    $itinerary->tour_id        =  $tour->id;
    $itinerary->plan      =   $temp_itinerary[$i];
    $itinerary->day            =   $temp_day[$i];
    $itinerary->save();
}

成功地插入了记录,并在tour.store方法中应用了相同的代码。它没有更新行,而是在表中插入了新行。最好的解决办法是什么?

最佳答案

若要更新,请尝试以下代码

$itinerary = Itinerary::find($tour_id);
$itinerary->plan = $temp_itinerary[$i];
$itinerary->day = $temp_day[$i];
$itinerary->save();

10-06 03:29