gpt4 book ai didi

ruby-on-rails - DRY View strftime 调用

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

我有一个模型 View ,其中呈现了许多日期字段。

我想做的是在我拥有的每个日期字段上调用 ​​strftime('%d.%m.%Y %H:%M')

- @items.each do |item| 
= item.date_field.strftime('%d.%m.%Y %H:%M')
= item.date_field1.strftime('%d.%m.%Y %H:%M')

关于如何干燥这个有什么想法吗?我试图在我的模型中制作 to_s 方法,但不幸的是,这不起作用。

更新:

我定义了这个方法:

def to_s(date)
send(date).strftime('%d.%m.%Y %H:%M')
end

所以我可以:

- @items.each do |item| 
= item.to_s(:date_field)
= item.to_s(:date_field1)

最佳答案

您可以创建一个助手(如果您在应用程序范围内使用它,则在 application_helper.rb 中)

选项 1

def customized_time_format(time)
time.strftime('%d.%m.%Y %H:%M')
end

并在您的 View 中使用它

- @items.each do |item| 
= customized_time_format(item.date_field)
= customized_time_format(item.date_field1)

选项 2

# config/locales/en.yml
en:
time:
formats:
customized: '%d.%m.%Y %H:%M'

并使用它

- @items.each do |item| 
= l(item.date_field, format: :customized)
= l(item.date_field1, format: :customized)

关于ruby-on-rails - DRY View strftime 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40241654/

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