2009-08-09 10 views
11

एक दृश्य मेरे पास है में चयन करते हैं, मैं fields_for उपयोग कर रहा हूँ एक संबंधपरक तालिका के लिए प्रपत्र डेटा प्रदर्शित करने के लिए। हालांकि, इस फ़ॉर्म के हिस्से में से चुनने के लिए चयन सूचियां होंगी। मैं देख रहा हूँ वहाँ form_for के लिए और सहायकों कि जानकारी एक पहले से ही आबादी वाले मॉडल वस्तु से जरूरत भर देंगे fields_for लेबल, text_field, text_area सहायकों रहे हैं ... लेकिन क्या एक चयन सूची सहायक है कि एक ही करना होगा के बारे में?रेल: fields_for

यह जब मैं प्रत्येक आइटम मॉडल वस्तु में है कि पहले से ही है और एक सूचकांक के साथ यह प्रदर्शित करता है के माध्यम से fields_for दोहराता के बाद से एक एक-से-कई संबंध हैं के लिए विशेष रूप से उपयोगी होगा।

क्या ऐसा कुछ भी मौजूद है?

उत्तर

28

कई चुनिंदा सहायक तरीकों जो आप उपयोग कर सकते हैं में एक form_for में उन्हें इस्तेमाल करने पर उदाहरण हैं। सबसे आम collection_select है। यह शानदार है अगर आपके पास मॉडल पर belongs_to एसोसिएशन है और आप इसे सेट करने के लिए एक चुनिंदा मेनू का उपयोग करना चाहते हैं।

<%= f.collection_select :category_id, Category.all, :id, :name %> 

अन्य स्थितियों के लिए अधिक सामान्य select विधि नहीं है। यहां आप उन विकल्पों की एक सरणी प्रदान कर सकते हैं जिन्हें आप प्रदान करना चाहते हैं।

<%= f.select :priority, [["Low", 1], ["Medium", 2], ["High", 3]] %> 

प्रत्येक सरणी तत्व में पहली मूल्य विकल्प का चयन के नाम पर, दूसरा मान जो विशेषता को सौंपा जाएगा है।

कई अन्य का चयन मेनू (दिनांक और समय के लिए), लेकिन इसके बाद के संस्करण दो ज्यादातर स्थितियों को कवर करना चाहिए रहे हैं। ये विधियां form_for या fields_for दोनों पर काम करती हैं।

2

आप select या collection_select के लिए देख रहे हैं। दोनों को फॉर्म_for या फ़ील्ड_ ब्लॉक के लिए इस्तेमाल किया जा सकता है। वहाँ कैसे प्रलेखन