Desidero impostare un determinato attributo in tutti i modelli di una raccolta.Eloquent - Aggiornamento di tutti i modelli di una collezione
in SQL pianura:
UPDATE table SET att = 'foo' WHERE id in (1,2,3)
il codice che ho:
$models = MyModel::findMany([1,2,3]);
$models->update(['att'=>'foo']);
tratto da here
ma non funziona. Sto diventando
Call to undefined method Illuminate\Database\Eloquent\Collection::update()
l'unico modo che ho trovato è la costruzione di una query con il generatore di query, ma io preferirei evitarlo.
Eloquent è un generatore di query, non un ORM. Non definisce 'update' sulle istanze del modello.Puoi definirlo da solo, ma alla fine da qualche parte nel codice _your_ devi scrivere 'MyModel :: whereIn ('id', [1, 2, 3]) -> update (...)'. –
@SergiuParaschiv In realtà Eloquent è un ORM – lukasgeiter
Basta cercare su Google la stessa domanda. Hai ~ – JSelser