gpt4 book ai didi

ruby-on-rails - 显示带有日期的 collection_select 下拉列表

转载 作者:数据小太阳 更新时间:2023-10-29 07:59:14 24 4
gpt4 key购买 nike

我正在尝试使用 collection_select 为某些日期创建一个简单的下拉列表,但我很难将日期显示为从现在开始的时间(即“从今天开始一个月”)

到目前为止我有:

def dates_for_review_select
[Date.today, (Date.today + 2.weeks), (Date.today + 1.month), (Date.today + 2.months), (Date.today + 3.months)]
end

<%= f.collection_select :uk_review_at, dates_for_review_select, :to_s, :to_s, {}, :class => "form-control" %>

(从这里 -> RoR - collection_select from array )

但我不知道如何更改日期的显示方式。目前它将它们显示为正常日期,但我希望它们使用 rails "distance_of_time_in_words"帮助程序显示,因此它以文字表示日期有多远。

但我不知道如何或在哪里实现这个?有什么想法吗?

最佳答案

options_for_select 将取一个数组数组,每个子数组的第一个元素是显示值,第二个元素是返回值。

所以这应该可行...

def dates_for_review_select
[Date.today, (Date.today + 2.weeks), (Date.today + 1.month), (Date.today + 2.months), (Date.today + 3.months)]
end

<%= f.select :uk_review_at, options_for_select(dates_for_review_select.map{|d| [distance_of_time_in_words(Date.today, d), d]}), {}, :class => "form-control review-date" %>

编辑为使用 camillavk 使用的最终版本。

关于ruby-on-rails - 显示带有日期的 collection_select 下拉列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32702894/

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