2012-10-20 15 views
5

मेरी रूप में, मैं की तरह स्पैन टैग का इस्तेमाल किया है:रेलवे पर रूबी में फॉर्म फ़ील्ड के लिए एक स्पैन टैग का उपयोग कैसे करें?

`<%= content_tag :span`, f.object.User, class: 'username' %>` 

बाद मैं मान चयनित इसकी HTML में निम्न की तरह लग रहे:

<span class="user" style="">Antony</span>

आईडी समस्या है नहीं करता है ' जब हम कोई फॉर्म बनाते हैं तो डेटाबेस को मान प्राप्त नहीं होता है। मुझे नहीं पता कि सही समस्या है। मैं मूल्य प्राप्त करने के लिए text_field के बजाय इस सामग्री टैग का उपयोग करना चाहता हूं।

धन्यवाद।

उत्तर

3

जब आप कोई HTML फॉर्म सबमिट करते हैं, तो POSTED प्राप्त करने वाले एकमात्र मान वे हैं जो टेक्स्ट फ़ील्ड, चयन, चेकबॉक्स, बटन इत्यादि जैसे इनपुट फ़ील्ड में हैं। सामग्री जो कि पृष्ठ पर है - एक अवधि में या नहीं - सर्वर पर वापस पोस्ट नहीं किया जाएगा। यह एक रेल मुद्दा नहीं है, यह एचटीएमएल काम करता है।

मुझे बिल्कुल यकीन नहीं है कि आप यहां क्या करने की कोशिश कर रहे हैं, लेकिन एक आम दृष्टिकोण जब आप एक मूल्य (इनपुट बॉक्स में नहीं) प्रदर्शित करना चाहते हैं और फॉर्म के साथ मूल्य वापस पोस्ट करना चाहते हैं, दोनों के लिए है पृष्ठ पर मूल्य प्रदान करें (एक अवधि में या फिर आप चाहते हैं) और एक छुपा इनपुट फ़ील्ड भी जोड़ें (hidden_field_tag) जिसमें इसका मूल्य भी है।

+1

हाँ .. धन्यवाद .. यह समझ में आता है .. धन्यवाद जैकब। यह स्टैक ओवरफ़्लो में मेरा पहला प्रश्न है और 5 मिनट में हल हो जाता है। महान। चीयर्स। –

1

हाँ, जैकब सही है। एक छिपे हुए क्षेत्र को बेहतर बनाएं

<%= f.hidden_field :user, class: 'user' %> 
<%= content_tag :span, f.object.User, class: 'username' %> 

पहली पंक्ति इसमें मूल्य प्राप्त करती है। मुझे उम्मीद है, जैकब का जवाब आपकी मदद करेगा। :)

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