【问题标题】:Update field in a Column on Laravel更新 Laravel 列中的字段
【发布时间】:2017-09-28 05:49:18
【问题描述】:

我正在尝试将票证表上的状态更新为值: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()
        ]);
}

【问题讨论】:

  • @AmrAly 没用:/
  • 我不清楚你要什么。听起来您想将票证的 status 更新为 2,但您的代码似乎已经这样做了。当您尝试您现在拥有的东西时,您是否遇到任何错误?

标签: database laravel model controller eloquent


【解决方案1】:

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

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()
    ]);
}

【讨论】:

  • 不客气 如果您觉得我的回答有用请采纳。
【解决方案2】:

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

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()
        ]);
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-03-22
    • 2018-12-11
    • 2019-09-15
    • 1970-01-01
    • 2020-07-11
    • 2014-12-11
    • 2016-01-28
    • 2013-01-01
    相关资源
    最近更新 更多