Ich arbeite an einer App, die Flüge zeigt. Im fligh-Auswahl-Workflow sollte der Benutzer zuerst ein Ziel auswählen. In meiner "Zielansicht auswählen" zeige ich alle Länder in meiner Datenbank an. Einige von ihnen haben keine Flüge. Ich versuche, nur die Länder mit Flügen zu zeigen, das zu erreichen, habe ich diese Methode geschrieben:Laravel überprüfen, ob verwandte Modell (Eine bessere Lösung?)
public function getDestinationsWithFlights()
{
$destinations = Destination::all();
$destinationsWithFlights = [];
for ($i = 0; $i < count($destinations) ; $i++)
{
if ($destinations[$i]->hasMany(Flight::class)->count() != 0)
{
$destinationsWithFlights[$i] = $destinations[$i];
}
}
return $destinationsWithFlights;
}
die Antwort
{
"0": {
"id": 1,
"country": "argentina",
"created_at": "2016-08-03 13:56:36",
"updated_at": "2016-08-03 13:56:36"
},
"2": {
"id": 3,
"country": "spain",
"created_at": "2016-08-03 13:56:36",
"updated_at": "2016-08-03 13:56:36"
}
}
Ich weiß nicht, wo diese Schlüssel " 0 "und" 2 ", kam von. Und ich denke, dass es dafür eine bessere Lösung gibt. Und auch, würde ich bevorzugen, die Antwort in etwa so zu sein:
{
"id": 1,
"country": "argentina",
"created_at": "2016-08-03 13:56:36",
"updated_at": "2016-08-03 13:56:36"
},
{
"id": 3,
"country": "spain",
"created_at": "2016-08-03 13:56:36",
"updated_at": "2016-08-03 13:56:36"
}
Sie haben eine Idee? Oder meinst du, es ist in Ordnung, so wie ich es gemacht habe?
Das heißt genau was ich brauchte. Ich hatte bereits die Beziehung eingerichtet, aber ich wusste nicht, dass Sie diese Methode zur Abfrage hinzufügen können. Vielen Dank! Viel! –