What is the difference between Time.current and DateTime.now in Rails 7?

In Short: Use Time.current

Patrick Karsh
Mar 30, 2023

In Rails 7, Time.current and DateTime.now both return the current date and time in the system's timezone, but they differ in their data type and precision.

Time.current returns a Time object, which includes the date and time with fractional seconds up to microseconds precision. It is preferred in Rails applications as it is more efficient for time zone conversions.

DateTime.now returns a DateTime object, which includes the date and time with fractional seconds up to milliseconds precision. It is less commonly used in Rails applications, but may be useful when higher precision is needed for operations involving time differences.

In summary, Time.current is generally preferred for most use cases in Rails applications as it provides higher performance and precision compared to DateTime.now.

--

--

Patrick Karsh
Patrick Karsh

Written by Patrick Karsh

NYC-based Ruby on Rails and Javascript Engineer leveraging AI to explore Engineering. https://linktr.ee/patrickkarsh

No responses yet