El método Save, tiene multiple
usos en laravel y es una de esas herramientas que siempre es bueno tener a mano.
Aquí les muestro algunos usos
Save con condición
En el siguiente ejemplo le pasamos a una función Save, un array con las opciones , y como puede apreciarse en la función protegida, pasamos el arreglo options condicionandom que si se cumplen determinada condición se actualice el Timestamp, al final a la variable products, le pasamos la función save() con el parámetro que necesitamos.
// src/Illuminate/Database/Eloquent/Model.php
public function save(array $options = [])
// src/Illuminate/Database/Eloquent/Model.php
protected function performUpdate(Builder $query, array $options=[])
{
if ($this->timestamps && array_get($options, 'timestamps', true))
{
$this->updateTimestamps();
}
}
$product = Product::find($id);
$product->updated_at = '2015-01-01 00:00:00';
$product->save(['timestamps'=>false]);
Para devolver relaciones de los modelos
En este caso vemos su uso en el método store, donde le indicamos que si el usuario está autenticado guarde el nuevo Post.
public function store()
{
$post = new Post;
$post->fill(Input::all());
$post->user_id = Auth::user()->user_id;
$post->user;
return $post->save();
}
Tiene otros usos más, por ejemplo para insertar
registros en la base de datos, dentro de los métodos update o store, en los
controladores
Y listo, esto es todo.
Espero modestamente que este artículo, sirva de ayuda a alguien.
Gracias.
Subir montañas hermana a los hombres……