gpt4 book ai didi

ruby - 使用中间人将日期从 yaml 打印到 ruby

转载 作者:太空宇宙 更新时间:2023-11-03 17:32:44 27 4
gpt4 key购买 nike

我正在使用 Middleman 制作一个漫画书收藏应用。

我能够从 YAML 文件中获取不同的信息并将其呈现在 .erb 文件中。

现在,我像这样使用 yaml 创建了一个日期:

date: 1977-08-01

我试着在网上四处寻找如何以不同的格式呈现它,但我找不到任何东西...

例如,我的 yaml 文档中有一个标题字段,如下所示:

title: "Uncanny X-Men"

所以我使用这个在我的 erb 文档中呈现它:

<%= comic["title"] %>

但是,比方说,我如何才能打印日期中的月份?不可能找到任何类型的信息......我确实知道如何在 ruby​​ 或 yaml 中使用日期的不同方面,但不知道如何将日期从 yaml 渲染到 ruby​​ :(

谢谢!

最佳答案

您需要将 YAML 文件中的 date 值解析为 Ruby 日期类,首先确保用引号将 YAML 文件中的日期值括起来,如下所示:

date: '1977-08-01'

然后解析:

<%= Date.parse(comic["date"]) %>

要获取月份,您可以添加 .month像这样:

<%= Date.parse(comic["date"]).month %>

这会给你数字 8 如果你想更多地定制你的月份看起来你应该查看 strftime ,如果是这样,您甚至不需要使用 .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

稍后您可以像这样在模板中调用它:

<%= format_date(comic["date"]) %>

希望对您有所帮助。

关于ruby - 使用中间人将日期从 yaml 打印到 ruby,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29332384/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com