J'ai une relation à un à plusieurs entre Device
et Command
modèles (chaque Device
a beaucoup commands
). Maintenant, je veux mettre à jour une collection de commandes en utilisant la méthode save()
. Donc, je le code suivant:Comment mettre à jour une collection en utilisant Eloquent Laravel
$device = Device::find(1);
$commands = $device->commands()->whereStatus("pending")->get();
$commands->status = "sent";
$commands->save();
Mais je suis une exception FatalErrorException
avec un message d'erreur de Call to undefined method Illuminate\Database\Eloquent\Collection::save()
.
En d'autres termes, je suis à la recherche d'une requête MySQL équivalent de ce qui suit dans le Eloquent
:
UPDATE commands SET status = 'sent' WHERE status = 'pending';
utilisant Laravel 4.2
Et comment puis-je obtenir la collection après la mise à jour? –
Attribuer cette ligne à une variable - devrait le faire. – BenjaminRH
Mais il renvoie le nombre d'enregistrements effectués ??? –