I Drop-Down-Menü bin mit der Site auszuwählen als:Laravel Formular :: Wählen
{{ Form::select('site', $sites, null, ['class' => 'form-control', 'placeholder' => 'Select a Site']) }}
{{ Form::label('site','site*') }}
Ich bin die ausgewählte Website in der Datenbank als site_id
speichern. Da dies den Index des ausgewählten Elements aus der Liste zurückgibt, wird site_id
als in der Datenbank gespeichert, wenn das erste Element ausgewählt wird.
Das Problem hier ist, site_id
ist ein Fremdschlüssel in meiner Datenbank und dies verursacht Fehler beim Abgleich mit der column:id
der sites
Tabelle. Da die id
Spalte, die von Laravel Migrationsgerüst erzeugt wird, beginnt von und die site_id
zurückgegeben von Form::select
startet von .
Gibt es trotzdem, dass der von Form::select
zurückgegebene Index von starten würde?
Oder gibt es eine andere Möglichkeit, das Problem zu lösen?
Können Sie zeigen, wie Sie dem Blade $ Sites bereitstellen? –
$ sites = Site :: latest() -> get (['name']); Und ich benutze den Laravel-Kompakt ('Sites'). –
Versuchen Sie, Site :: latest() -> get() -> pluck ('name', 'id') -> toArray() zu verwenden. Dies ändert den Index/Wert der Auswahl, um der ID des Elements zu entsprechen. –