gpt4 book ai didi

ruby-on-rails - Rails View 下拉列表中的日期格式

转载 作者:行者123 更新时间:2023-12-03 09:28:15 24 4
gpt4 key购买 nike

我可以帮助您格式化 View 中下拉列表中的日期字段。我的日期显示带有时间戳,我希望它们显示为“mm/dd/yyyy”。

在我的模型中,我有一个从表中选择日期字段的方法:

def self.get_event_dates
event_dates = UgradRsvp.find_by_sql("select distinct event_date from admissions.ugrad_rsvps where event_date is not null order by event_date desc")
end

我们使用 Oracle 作为数据库,因此我也尝试使用 to_char(event_date, 'MM/DD/YYYY') 作为 event_date,但下拉列表中的日期仍然显示带有时间戳。

我的 View 是一个搜索表单。用户将选择一个日期,然后查看在该 event_date 报名参加事件的所有学生的报告:

<%= select_tag "event_date", options_from_collection_for_select(UgradRsvp.get_event_dates, "event_date", "event_date") %>

我的表 ugrad_rsvps 中大约有八个日期。它们显示为,即:“2013-04-18 00:00:00 -0400”我想让它们显示为“04/18/2013”​​。我尝试过使用 strftime("%m/%d/%Y"),但我只是在下拉 ListView 中的行上出现错误(上面)。

有什么想法吗?谢谢,

最佳答案

在您的模型中添加以下方法

  def event_date_formatted
event_date.strftime("%m/%d/%Y")
end

然后你可以像这样简单地使用:

<%= select_tag "event_date", options_from_collection_for_select(UgradRsvp.get_event_dates, 'event_date', :event_date_formatted) %>

关于ruby-on-rails - Rails View 下拉列表中的日期格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15720940/

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