Если вам нужен только вывод строки, вы можете сделать, как сказал Хитеш и Крис, с помощью strftime
, но если вы пытаетесь получить экземпляр Time
из экземпляра DateTime
, вы можете сделать следующее:
Time.parse(DateTime.now.to_s)
Если вы хотите проанализировать строку типа "1/10/2011 9:00:00"
и получить обратно экземпляр Time
, вы можете использовать тот же метод parse
:
Time.parse("1/10/2011 9:00:00") #=> 2011-10-01 09:00:00 -0500
Обратите внимание на формат: Ruby использует не-американский формат d / m / y при разборе дат.
Чтобы вывести строковое представление времени дня из этого экземпляра Time
, он вернулсядо strftime
.
Надеюсь, это прояснит ситуацию.