2017-10-24 3 views
0

Ich habe eine Funktion wie folgt aus:Laravel gibt Fehler nach Löschen eines Datensatzes

protected function delete_failed_payment($token) 
{ 
    $invoice = Invoice::where("owner_id",Auth::user()->owner_id) 
     ->where("token",$token) 
     ->where("completed","0") 
     ->first(); 

    Invoice::destroy($invoice->id); 

    return redirect("/")->withErrors("Fail!"); 
} 

Nach Aufruf dieser Funktion wird der Datensatz erfolgreich gelöscht, aber ich bekomme diese Fehlerreaktion im Gegenzug:

UnexpectedValueException

Der Response-Inhalt muss eine Zeichenfolge oder ein Objekt sein, das __toString(), "boolean" implementiert.

.../Verkäufer/Symfony/http-Stiftung/Response.php Linie 407

ich es erwarte mir umleiten zu „/“ aber auch wenn der Datensatz gelöscht wird und es scheint kein Problem zu sein Es wird mich nicht lassen.

Ich habe auch schon versucht, diese:

$invoice = Invoice::where("owner_id",Auth::user()->owner_id) 
     ->where("token",$token) 
     ->where("completed","0") 
     ->delete(); 

Mit dem gleichen Ergebnis wie zuvor.

Irgendwelche Hilfe?

Antwort

1

Versuchen

protected function delete_failed_payment($token) 
{ 
    $invoice = Invoice::where("owner_id",Auth::user()->owner_id) 
      ->where("token",$token) 
      ->where("completed","0") 
      ->first(); 

    Invoice::destroy($invoice->id); 

    return redirect('/') 
     ->withErrors(array('message' => 'Fail!')); 
} 
+0

Nein, dies ist sicherlich von der Zerstörung der Abfrage, nicht die Rückkehr. – prgrm

+0

Was wird zurückgegeben, wenn Sie dies in Ihrer '/' Ansicht '{{dd ($ errors)}}' hinzufügen? – kerrin

+0

Oder entfernen Sie den "withErrors" -Teil der Weiterleitung als Test. Ich denke, das Problem ist die Antwort auf die Weiterleitung. Das Löschen funktioniert erfolgreich durch den Klang davon. – kerrin

1

bereits.

protected function delete_failed_payment($token) 
{ 
    $invoice = Invoice::where("owner_id",Auth::user()->owner_id) 
     ->where("token",$token) 
     ->where("completed","0") 
     ->first(); 

    $invoice->delete(); 

    return redirect->to("/")->withErrors("message" => "Fail!"); 
} 
Verwandte Themen