[英]Eloquent laravel, clone entity
我也在嘗試克隆一個實體和OneTomany關系。 由於某些原因,$ entity-> hasManyRelation()不是函數。 :/
這是我的代碼:
$clonedWorksheet = Worksheet::where('id', $id)->get()->load('records');
$worksheet = new Worksheet;
$worksheet->employee_id = $request->employee;
$worksheet->workday = $request->workday;
$worksheet->save();
foreach ($clonedWorksheet->records() as $clonedRecord) {
$record = new Record;
$record->from = $clonedRecord->from;
$record->to = $clonedRecord->to;
$record->estimated = $clonedRecord->estimated;
$record->place_id = $clonedRecord->place_id;
$record->worksheet_id = $worksheet->id;
$record->vehicle_id = $clonedRecord->vehicle_id;
$record->tool_id = $clonedRecord->tool_id;
$record->job_id = $clonedRecord->job_id;
$record->comment = $clonedRecord->comment;
$worksheet->records()->save($record);
}
還有其他想法,或者我做錯了什么?
問題在這里。
foreach ($clonedWorksheet->records() as $clonedRecord) {
records()是模型中執行數據庫查詢的方法。 回報是雄辯的關系對象。 你要:
foreach($clonedWorksheet->records as $clonedRecord) {
要么
foreach ($clonedWorksheet->records()->get() as $clonedRecord) {
$record = $cloneRecord->replicate();
$record->worksheet_id = $worksheet->id;
$record->save();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.