이것은 까다로운 질문입니다. 내가 아는 한 최선을 설명하려고 애쓸뿐입니다. 나는 여행을하고 있으며, 사용자가 그 여행에서 복사 버튼을 클릭하기를 원합니다. 그러면 그 여행을 다시 복제 할 수 있으므로 사용자는 거대한 양식을 다시 채울 필요가 없습니다.trip_id 열을 업데이트하는 동안 테이블을 다른 세 개의 테이블에 복제하십시오. Laravel 5.3
여행 양식은 4 가지 모델 (테이블)로 저장됩니다.
임 지금 복제를 수행하는 방법이다 :
가 그럼 난 다른 3를 가지고 :public function replicateTrip (Request $request, $slug, $id) {
$listing = $request->user()->listings()->where('slug', $slug)->first();
$trip = $listing->trips()->where('id', $id)->first();
$replicateTrip = Trip::find($trip->id);
$replicatebringToTrip = BringToTrip::where('trip_id', $id)->first();
$replicateIncludedInPriceForTrip = IncludedPriceTrip::where('trip_id', $id)->first();
$replicateNotIncludedInPriceForTrip = NotIncludedPriceTrip::where('trip_id', $id)->first();
$newTask = $replicateTrip->replicate();
$newTask2 = $replicatebringToTrip->replicate();
$newTask3 = $replicateIncludedInPriceForTrip->replicate();
$newTask4 = $replicateNotIncludedInPriceForTrip->replicate();
$newTask->save();
$newTask2->save();
$newTask3->save();
$newTask4->save();
return redirect()->back();
}
을 그래서이 복제 된 여행이 주요 여행 테이블에 같은 모습입니다 그 여행 ID에서 데이터를 저장하는 다른 모델 (테이블). 그래서 예를 들면
여기에 데이터가 복제되는 것을 내 다른 테이블 : 당신이 볼 수 있듯이
는, 데이터가 성공적으로 복제,하지만은 "trip_id"열,이 경우 어떤 1259는 내가 복제 한 원래 여행과 여전히 동일합니다. 나는 새로운 복제 된 trip_id를 얻고 그것을 가지고있는 다른 3 개의 모델에 삽입 할 필요가있다. 이 경우 그래서, 두 번째 행은 1262 것 NOT 1259.
당신은 그것을 시도 할 수
, 스마트 사람, 감사 김 많이! – David