SELECT now()::timestamp;
Le casting convertit le timestamptz
renvoyé par now()
à l'timestamp
correspondant dans votre fuseau horaire - défini par le timezone
réglage de la séance. C'est aussi ainsi que la fonction SQL standard LOCALTIMESTAMP
est implémenté dans Postgres.
Si vous ne travaillez pas dans plusieurs fuseaux horaires, cela fonctionne très bien. Sinon, passez à timestamptz
pour added_at
. La différence ?
- Ignorer complètement les fuseaux horaires dans Rails et PostgreSQL
BTW, cela fait exactement pareil, juste plus bruyant et cher :
SELECT now() AT TIME ZONE current_setting('timezone');