Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

153
Views
Zonas horarias en Rails 5 cuando se usa beginnig_of_month

Mi aplicación Rails 5 está configurada en BRT (zona horaria de Brasil) y mi base de datos de Postgres en UTC. Nunca tuve que preocuparme por eso porque Rails siempre calculaba la hora correcta al leer o escribir en la base de datos. Entonces, por ejemplo, cuando tenía un campo de entrada con time = 15:00 , escribía 18:00 en la base de datos y, al leer de la base de datos, regresaba 15:00 nuevamente. ¡Perfecto!

Pero ahora quiero escribir el comienzo del mes en la base de datos:

Time.now.beginning_of_month que es 2017-04-01 00:00:00

 Payment.create( :time => Time.now.beginning_of_month )

Ahora escribe exactamente esto (en BRT) en la base de datos sin convertir a UTC. Cuando leo esto de la base de datos más tarde, lo convierte a BRT 2017-03-31 21:00:00 , lo cual es incorrecto.

Por supuesto, podría convertir la hora a UTC antes de guardarla en la base de datos. Pero me parece extraño que Rails siempre se encargue de convertir y en este caso no lo hace.

Espero que el problema se haya aclarado.

¿Algunas ideas?

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Encontré un artículo muy bueno sobre este tema:

https://www.varvet.com/blog/trabajando-con-husos-horarios-en-ruby-on-rails/

Básicamente, lo que tenía que hacer es cambiar Time.now a Time.current ya que Time.now ignora la configuración de la zona horaria.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!