Aggiornare i modelli laravel senza toccare il timestamp

Scrivici subito
Scrivici per ottenere una consulenza gratuita.
* campi richiesti
** indicativo
Tel.: 366.290.48.91
Email: mail@ethicsoft.it

Sedi: Genova e Savona

Usando Laravel può capitare di dover aggiornare le righe di una tabella senza toccare i timestamp, in particolare lasciando inalterato il campo updated_at.

Come fare?
Semplice.. Esiste un flag apposito che, quando impostato, disattiva l’aggiornamento di updated_at.

Esempi…
Poniamo che tu voglia modificare un prodotto salvato nella variabile $product, lasciando però inalterato il suo attributo updated_at, esistono due varianti per farlo:

Se vogliamo che tutti gli update su questo oggetto non modifichino updated_at, è sufficiente impostare il flag timestamps sull'oggetto:

$product->timestamps = false;
$product->save();

Se invece vuoi limitare l’effetto al singolo update, devi passare il flag nella chiamata di save():

$product->save(['timestamps' => false]);

 

…..E per aggiornamenti multipli?

In questo l’approccio è quello di accedere alla tabella bypassando la classe del modello (Product, nell'esempio), ovvero invece di:

Product::...->update(...)

Userai:

DB::table('products')->...->update(...)

Tutto qui… Troppo facile no?

Massimizza il potenziale del tuo portale o gestionale

Sfrutta le nostre competenze per piattaforme web e gestionali in Cloud personalizzati.
Hai un progetto in mente o desideri discutere di come posso aiutarti? Non esitare a contattarmi. Sarò felice di ascoltarti e condividere modi per portare valore al tuo business.
Pagine simili a "Come aggiornare i modelli laravel senza toccare updated_at"
Licenza:
I contenuti di questo articolo sono proprietà intellettuale dei relativi autori e protetti ai sensi dell'art. 1 della legge italiana sul diritto d'autore n. 633 del 22 aprile 1941.
La copia, parziale o integrale, è illegale escluso il caso di citazioni di lunghezza massima di un singolo paragrafo e il cui testo sia completamente incluso in un link a questa pagina.