我正在使用Middleman制作漫画收藏应用程序。
我可以从YAML文件中获取不同的信息并将其呈现在.erb文件中。
现在,我使用yaml创建了一个日期:
date: 1977-08-01
我尝试在网上浏览如何以不同的格式呈现它,但我找不到任何东西......
每个例子,我的yaml文档中都有一个标题字段,如下所示:
title: "Uncanny X-Men"
所以我使用这个在我的erb文档中渲染它:
<%= comic["title"] %>
但是,如何打印出我约会的月份?无法找到任何类型的信息......我确实得到如何在ruby或yaml中使用日期的不同方面,但不知道如何将日期从yaml呈现为ruby :(
谢谢!
答案 0 :(得分:4)
您需要将YAML文件中的date
值解析为Ruby日期类,首先确保在YAML文件中用引号括起日期值:
date: '1977-08-01'
然后解析:
<%= Date.parse(comic["date"]) %>
并获得您添加.month
的月份
像这样:
<%= Date.parse(comic["date"]).month %>
如果您希望对月份的方式进行更多自定义,则会为您提供8
号码{@ 3}},如果是这样,您甚至不需要使用{{ 1}}。
理想情况下,你可以在.month
config.rb
之后您可以在模板中调用它:
# Methods defined in the helpers block are available in templates
helpers do
def format_date(date_txt)
date = Date.parse(date_txt)
date.strftime("%B")
end
end
我希望有所帮助。
答案 1 :(得分:1)