Rails Ruby 中的内嵌数据格式

Inline data formatting in Ruby on Rails

在 rails 应用程序中,我有一个 .jst.eco 模板,其中包含以下行...

<span> <%= @event.get 'create_at' %> </span> 

...将日期呈现为 2015-01-17 11:04:03。

但是我只想显示2015-01-17。我可以在 <%= ... %> 中使用巧妙的格式化技巧吗?

你可以这样写:

span> <%= @event.get('create_at').to_s(:db) %> </span>
# or
span> <%= @event.get('create_at').to_formatted_s(:db) %> </span>

:db表示'%Y-%m-%d。查看 DATE_FORMATS

这取决于你拥有的对象。如果是时间对象,可以这样做:

@event.get('create_at').strftime('%F')

如果它只是一个字符串,那么首先你应该解析它:

Time.parse(@event.get('create_at')).strftime('%F')

根据 .strftime 文档 %FThe ISO 8601 date format (%Y-%m-%d)