2009-02-18 20 views
10

对于“新”对象表单使用<%= f.datetime_select:start%>时,如何设置选项默认情况下不选择日期,而是使用nil/null值?相关模型中的字段可以有选择地为null,但是默认情况下,datetime_select控件没有null选项。datetime_select没有值?

回答

27

我想你想:

f.datetime_select :start, :include_blank => true

start为零,字段将选择空白选项。这也允许用户而不是输入日期。

有关详细信息,请参阅the documentation for date_select

0

您将要使用:prompt选项。

从Rails的文档:

# Generates a datetime select with a custom prompt. Use :prompt=>true for generic prompts. 
    datetime_select("post", "written_on", :prompt => {:day => 'Choose day', :month => 'Choose month', :year => 'Choose year'}) 
    datetime_select("post", "written_on", :prompt => {:hour => true}) # generic prompt for hours 
    datetime_select("post", "written_on", :prompt => true) # generic prompts for all 
+0

扩展样本似乎没有工作。 <%= f.datetime_select:start,:prompt => {:day =>'选择日期',:month =>'选择月份',:year =>'选择年份'}%> 是否存在语法错误这里? – 2009-02-18 03:40:21

+0

你可以使用香草助手:<%= datetime_select:my_object,:start,:prompt => {:day =>'Choose day',:month =>'选择月份',:year =>'选择年份'} %> – 2009-02-18 11:37:15