2009-02-18 19 views
10

<% = f.datetime_select का उपयोग करते समय: "नया" ऑब्जेक्ट फ़ॉर्म के लिए%> प्रारंभ करें, आप डिफॉल्ट रूप से दिनांक का चयन न करने के बजाय विकल्पों को कैसे सेट कर सकते हैं बल्कि एक शून्य/शून्य मान? संबंधित मॉडल में फ़ील्ड वैकल्पिक रूप से शून्य हो सकता है लेकिन डिफ़ॉल्ट रूप से datetime_select नियंत्रण में शून्य विकल्प नहीं होता है।डेटाटाइम_इलेक्ट पर शून्य मूल्य?

उत्तर

27

मुझे लगता है कि आप चाहते हैं:

f.datetime_select :start, :include_blank => true

जब start नहीं के बराबर है, फ़ील्ड रिक्त विकल्प का चयन करेंगे। यह उपयोगकर्ताओं को पर एक तिथि दर्ज करने की अनुमति देता है।

विवरण के लिए the documentation for date_select देखें।

+0

आह, हाँ यह बहुत बेहतर है। धन्यवाद ल्यूक। –

+0

अभी भी रेल 4.2.4 के लिए अच्छा है! –

0

आप: प्रॉम्प्ट विकल्प का उपयोग करना चाहेंगे।

रेल डॉक्स से

:

# 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 => 'दिन चुनें',: महीना => 'महीना चुनें',: वर्ष => 'वर्ष चुनें'}%> क्या कोई वाक्यविन्यास त्रुटि है यहाँ? –

+0

आप वेनिला सहायक का उपयोग कर सकते हैं: <% = datetime_select: my_object,: start,: prompt => {: day => 'दिन चुनें',: महीना => 'माह चुनें',: वर्ष => 'वर्ष चुनें'} %> –

संबंधित मुद्दे