Was ist der beste Weg, Object::all()
zu array('object_id', 'object_name')
zu machen? Ich brauche einen schönen Code, um eloquent Sammlung für SELECT zu verwenden: {{ Form:select('objects', $custom_array) }}
. Ist eine For-Schleife der einzige Weg das zu tun?Der beste Weg, eloquent Sammlung zu benutzerdefinierten Array machen
7
A
Antwort
16
Ich glaube, Sie suchen toArray()
:
User::all()->toArray();
http://four.laravel.com/docs/eloquent#converting-to-arrays-or-json
Um ein Array zu erhalten, die direkt mit Form::select()
verwendet werden können, können Sie die folgende verwenden:
$contacts = Contact::orderBy('name')->lists('name', 'id');
$contacts = count($contacts) > 0 ? $contacts : array();
{{ Form::select('contact', $contacts) }}
Vielen Dank für die Antwort, aber es macht mir die Struktur eines Arrays wie folgt: 'array (0 => array (" id "=> 1," name "=>" objekt1 "), 1 => array (" id "=> 2, "name" => "objekt2") ...) 'und ich brauche es so:' array (1 => "objekt1", 2 => "objekt2") ';) –
Ah ok, wenn du ein Array brauchst, das du mit' Form :: select() 'verwenden kannst sollte folgendes funktionieren: '$ contacts = Kontakt :: orderBy ('name') -> lists ('name', 'id'); $ contacts = Anzahl ($ Kontakte)> 0? $ contacts: array(); {{Formular :: select ('contact', $ contacts}} '' –
Ja! Perfekt;]] danke –