Rails 的时间格式为 HH:MM AM/PM

web*_*Dev 1 php ruby-on-rails

我有 PHP 代码将时间转换为 HH:MM 格式

date("g:i a", strtotime('2000-01-01 07:00:00 UTC')

我想在 Rails 中转换相同的函数。

我试过DateTime.parse('2000-01-01 07:00:00 UTC').strftime("%I:%M %p")

显示错误:没有将时间隐式转换为字符串

Aru*_*hit 5

我产生了错误:

DateTime.parse(Time.now).strftime("%I:%M %p")
# TypeError: no implicit conversion of Time into String
Run Code Online (Sandbox Code Playgroud)

这是因为parse方法只接受String对象,而不接受任何其他对象。但这是Time你的情况的对象。你需要做的是:

DateTime.parse(time_object.to_s).strftime("%I:%M %p")
# or directly
time_object.strftime("%I:%M %p")
Run Code Online (Sandbox Code Playgroud)