Database 更新Laravel上列中的字段

Database 更新Laravel上列中的字段,database,laravel,model,controller,eloquent,Database,Laravel,Model,Controller,Eloquent,我正在尝试将我的tickets表上的状态更新为值:2。 一旦我可以创建评论。。。(正在工作…)),我想将状态更改为2 这是我的机票型号和以下功能: public function addComment($id,$body,$solved) { $this->find($id)->status = 2; $this->save(); $this->comments()->create([

我正在尝试将我的tickets表上的状态更新为值:2。 一旦我可以创建评论。。。(正在工作…)),我想将状态更改为2

这是我的机票型号和以下功能:

 public function addComment($id,$body,$solved)
{    

    $this->find($id)->status = 2;
    $this->save();            


    $this->comments()->create([
        'ticket_id' => $id,
        'body' => $body,
        'user_id' => auth()->id()
        ]);
}

尝试像这样更改代码。也许这会解决您遇到的问题:

public function addComment($id,$body,$solved)
{    
    $ticket = Ticket::find($id);
    $ticket->status = 2;
    $ticket->save();            

    $ticket->comments()->create([
        'ticket_id' => $id,
        'body' => $body,
        'user_id' => auth()->id()
        ]);
}

您需要先获取对象,然后才能更新它:

public function addComment($id,$body,$solved)
{    
$ticket = $this->find($id);
$ticket->status = 2;
$ticket->save();            


$ticket->comments()->create([
    'ticket_id' => $id,
    'body' => $body,
    'user_id' => auth()->id()
    ]);
}

@AmrAly没有工作:/我不清楚你要什么。听起来您想将票据的
状态更新为2,但您的代码似乎已经在这样做了。当你尝试你现在所拥有的东西时,你是否有任何错误?如果你觉得我的答案有用,欢迎你接受。