Szenario ist Zone enthalten wenige Städte, ich habe ein Problem in meinem Bearbeitungsformular.Laravel 5.2 Looping Wie kann man doppelte Ergebnisse verhindern?
Das Problem ist, ich muss Stadt Belons zu Zone selected=true
machen und die andere Stadt, die nicht zu Zone in der Standardoption gehören.
So habe ich zwei Schleifen wie diese
@foreach($cities as $city)
@foreach($zone->cities as $zone_city)
@if($city->id == $zone_city->id)
<option value="{{ $city->id }}" selected="true">{{ $city->name }}</option>
@endif
@endforeach
//if current city id not yet printed before then
<option value="{{ $city->id }}">{{ $city->name }}</option>
@endforeach
$cities
ist alle Stadt von der Steuerung übergebene Wert 1, 2, 3, 4, 5
ist, und $zone->cities
ist Stadt, die den Wert der Zone gehört 1, 3, 5
ist.
Mit dem obigen Code bekomme ich dieses Ergebnis
<option value="1" selected="true">Surabaya</option>
<option value="1">Surabaya</option>
<option value="2">Sidoarjo</option>
<option value="3" selected="true">Malang</option>
<option value="3">Malang</option>
<option value="4" selected="true">Gresik</option>
<option value="4">Gresik</option>
<option value="5">Madura</option>
das Ergebnis, das ich erwartete
<option value="1" selected="true">Surabaya</option>
<option value="2">Sidoarjo</option>
<option value="3" selected="true">Malang</option>
<option value="4" selected="true">Gresik</option>
<option value="5">Madura</option>
Wie meine Looping Codelogik beheben ist?
Danke, jede Hilfe geschätzt.
AKTUALISIERT
Hier ist meine bearbeiten Controller
public function zone_edit($id)
{
$zone = Zone::find($id);
$cities = City::all();
return view('backend.admin.pricings.zone_edit', compact('zone', 'cities'));
}
Sie sparen meinen Tag es funktioniert, aber gibt es irgendwelche Anpassungen von Laravel, die dies ohne Spiel mit Array tun können? So etwas wie, wenn die Sammlung ein Objekt oder etwas anderes enthält. –
Sie sollten diese Art von Betrieb in Controller, Laravel Sammlung ist ein Weg, aber in diesem Fall ist es nicht vorteilhafter – Vikash
Ich habe gerade meine Frage aktualisiert, die meine Edit-Controller zeigen, vielleicht können Sie mir helfen, diese Operationen in Controller zu verschieben. –