我可以在date_select帮助器标签中同时显示(和唯一)月份和年份吗?

时间:2013-12-23 11:04:38

标签: ruby-on-rails ruby-on-rails-4 html-select view-helpers datefield

我有一个date属性的表单。

现在我正在使用f.date_select :begin_date, discard_day: true,但分别在每个自己的选择菜单中显示月份和年份。

是否可以在同一个选择菜单中显示月份和年份,如下所示?

2013年1月 2013年2月 2013年3月 2013年4月 等

2 个答案:

答案 0 :(得分:1)

您可以查看rails API documentationdate select method了解详情。

您的代码将是这样的:

<%= f.date_select :date,  { :discard_day => true} %>

答案 1 :(得分:1)

7 年过去了,但是当我在 Google 上搜索这个确切的问题时,这个问题仍然出现。

您可以使用标准的 ActionView::Helpers::FormBuilder#select 使其工作,并手动为其提供月 + 年的集合

<% the_months = (Date.new(2020,1,1)..Date.new(2020,12,31)).select { |d| d.day == 1 } %>
<%= f.select :start_date, the_months.map { |d| [d.strftime('%b %Y'), d] } %>