2017-04-30 7 views
1

Ich versuche, den Status meiner Ticket-Tabelle auf den Wert zu aktualisieren: 2. Sobald ich den Kommentar erstellen kann ... (funktioniert .. :)), wollte ich ändern Sie den Status 2.Update-Feld in einer Spalte auf Laravel

Dies ist mein Ticket-Modell und die folgende Funktion:

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

@AmrAly nicht funktioniert:/ –

+0

Sein unklares mir wonach du fragst. Es klingt, als ob du den Status des Tickets auf 2 aktualisieren möchtest, aber dein Code scheint das bereits zu tun. Erhalten Sie irgendeine Art von Fehler, wenn Sie versuchen, was Sie gerade haben? – Hollings

Antwort

2

Sie benötigen Objekt erhalten zuerst, dann können Sie es aktualisieren:

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

Es hat funktioniert. Vielen Dank –

+0

Sie sind willkommen Wenn Sie meine Antwort nützlich finden, bitte akzeptieren Sie es. –

0

Versuchen Sie Ihr Code wie folgt zu ändern. Vielleicht wird dieses Problem beheben das Problem, das Sie mit:

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