代码之家  ›  专栏  ›  技术社区  ›  Abhijit Mondal Abhi

Laravel雄辩的更新方法不保存父关系

  •  0
  • Abhijit Mondal Abhi  · 技术社区  · 5 年前

    public function update($id, UpdateLeadRequest $request)
        {
            $lead = Lead::find($id);
            $lead->fill($request->validated());
            $changeToRecall = $request->reason == 'RECALL';
            if ($changeToRecall && empty($request->agent_id)) {
                $lead->agent_id = Auth::id();
            }
    
            $expert = User::findOrFail($lead->expert_id);
    
            $oldLeadStatus = $lead->status;
            $oldClosedUntil = $lead->closed_until;
    
            $leadStateChangeUseCase = new LeadStateChangeUseCase();
            $leadStateChangeUseCase->setStatus($lead, $request->reason);
            $leadStateChangeUseCase->setClosedUntilDate($lead, $request);
    
            $comment = new Comment();
            $comment->user_id = Auth::id();
            $comment->fill($request->comment);
            try {
                $date = \Carbon\Carbon::parse($request->date);
            } catch (Exception $e) {
                $date = now('Europe/Berlin');
            }
            $comment->date = $date;
    
            DB::transaction(function () use ($lead, $comment) {
               $lead->comments()->save($comment); // Trying to save here 
               
            });
    
    
          
    
            return Response::json(['message' => 'lead saved']);
        }
    

    公共函数注释():MorphMany { }

    0 回复  |  直到 5 年前