So erstellen Sie manuell eine neue leere Eloquent Collection in Laravel 4
Wie schaffen wir eine neue Beredt Sammlung in Laravel 4, ohne mithilfe von Query Builder?
Es ist ein newCollection()
Methode, die überschrieben werden können, indem Sie das nicht wirklich tun job, denn das ist nur verwendet werden, wenn wir die Abfrage ein Satz Ergebnis.
Ich dachte des Gebäudes eine leere Sammlung, dann füllen Sie es mit Beredten Objekte. Der Grund, warum ich nicht mit array ist, weil ich wie Eloquent Kollektionen Methoden wie contains
.
Wenn es andere alternativen gibt, würde ich Sie gerne hören.
InformationsquelleAutor der Frage JofryHS | 2014-05-12
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es ist nicht wirklich Aussagekräftig, zum hinzufügen einer Eloquent-model für Ihre Kollektion haben Sie einige Optionen:
In Laravel 5 profitieren Sie von einem Helfer
oder
ALTEN Laravel 4 ANTWORT
Dann können Sie
Oder Sie konnte machen:
InformationsquelleAutor der Antwort Antonio Carlos Ribeiro
als von laravel 5. Ich verwenden Sie die Globale Funktion
collect()
diese syntax ist sehr sauber und man kann auch hinzufügen, offsets, wenn Sie nicht wollen, die numberic index.
InformationsquelleAutor der Antwort Gokigooooks
Nur um add-on zu die akzeptierte Antwort, können Sie auch einen alias anlegen in
config/app.php
Dann müssen Sie einfach zu tun
InformationsquelleAutor der Antwort andrewtweber
Ich habe tatsächlich festgestellt, dass mit
newCollection()
ist mehr zukunftssicher.... zB.$collection = (neue Post)->newCollection();
So, wenn Sie sich entscheiden, erstellen Sie Ihre eigene collection-Klasse für das Modell (wie ich schon mehrmals) zu einem späteren Zeitpunkt, ist es viel einfacher, umgestalten von code, wie Sie nur überschreiben Sie die
newCollection()
Funktion in Ihrem ModellInformationsquelleAutor der Antwort Samuel Cloete
Ist es besser, mit der Injection-Muster und nach
$this->collection->make([])
alsnew Collection
InformationsquelleAutor der Antwort Victor Aguilar