我是Rails的新手,使用的是版本3.2.6。到目前为止,我已经制作了一个包含日期时间的简单练习应用程序。在我的形式部分我有
<%= form_for(@item) do |f| %>
[...snip irrelevant form fields...]
<div class="field">
<%= f.label :copyright_date, %><br />
<%= f.datetime_select :copyright_date, { include_blank: true } %>
</div>
<% end %>
在选项文档http://api.rubyonrails.org/classes/ActionView/Helpers/DateHelper.html#method-i-date_select中,我认为{ include_blank: true }
选项哈希的datetime_select
部分允许我设置空日期。但是,如果我将任何日期字段(但不是时间字段)设置为空白选项,则整个事件将返回nil
。我正在处理档案数据,有时整个日期不知道,但只有一部分。我需要能够捕获所有日期时间数据(如果存在)但将任何未知部分留空。我认为这就是include_blank
的用途,但也许我误解了文档?
答案 0 :(得分:0)
所有include_blank确实会在每个下拉菜单的开头添加一个空格,因此您可以选择将其留空。如果没有它,它将默认为值,并且没有选项将其留空。
要执行您所描述的操作,您可以创建一个日期时间对象,并通过它设置小时,分钟等的值,然后保存它。
http://corelib.rubyonrails.org/classes/DateTime.html#M000524