public function getDeleteQuote($quote_id)
{
$quote = Quote::find($quote_id);
$author_id = $quote->author_id;
$total_quote = DB::table('quotes')->where('author_id' , $author_id)->count();
$author_deleted = false;
if($total_quote === 1)
{
$auth_deleted = DB::table('authors')->where('id' , $author_id)->delete();
$author_deleted = true;
}
$quote->delete();
$msg = $author_deleted ? 'Quote And Author Deleted !' : 'Quote Deleted !' ;
return redirect()->route('home')->with([
'success' => $msg
]);
}
In den ersten 3 Zeilen verwende ich zwei Suche in der gleichen Tabelle eine für finden Sie quote_id und andere zum Zählen, wie viel Zitat in der gleichen Autor. Aber ich möchte das nur eine einzige Abfrage machen. Wie kann ich das machen ?Wie man zählen und in einer einzelnen Abfrage auf derselben Tabelle auf Laravel Query Builder suchen?
Legen Sie den gesamten Code zur Seite. Stattdessen bieten Sie richtige CREATE und INSERT-Anweisungen und ein gewünschtes Ergebnis – Strawberry
Sie können dies wahrscheinlich viel besser mit Beziehungen tun und auch mit Kaskade löschen, also auf löschen entfernen zugehörigen Autor zu, etc, aber braucht ein bisschen mehr, um zu erreichen, was Sie wollen –