2011-10-12 6 views
8

मेरे पास एक टेबल User है जो Personमैं फ़ील्डसेट के बिना एक फॉर्मेटास्टिक नेस्टेड इनपुट कैसे बना सकता हूं?

नामक एक तालिका से प्राप्त होता है जिसे निम्न कार्य करने की बजाय लंबी कहानी छोटी होती है:

f.inputs 'Something' do 
    f.inputs for: :person do |f| 
    f.input :name 
    f.input :surname 
    end 
    f.input :account 
end 

यह ol के अंदर fieldset उत्पन्न करता है, जो स्वयं ही अमान्य है, लेकिन यह मुझे चिंता नहीं करता है। मैं fieldset से छुटकारा पाना चाहता हूं इसलिए सभी गुण एक ही स्तर पर दिखाए जाते हैं।

f.inputs 'Something' do 
    f.input :name, for: :person 
    f.input :surname, for: :person 
    f.input :account 
end 

बेशक यह मान्य नहीं है, इनपुट में इस तरह की कोई चीज़ नहीं है:।

मैं प्रतिनिधि का उपयोग करने के बारे में सोच रहा था, लेकिन फिर भी मुझे लगता है कि Person मॉडल में मेरे पास accepts_nested_attributes_for बहुत अधिक है और वे तोड़ देंगे।

इसके अलावा Person तालिका किसी अन्य मॉडल द्वारा विरासत में प्राप्त की जा रही है।

कोई मणि है जो इसे पारदर्शी बनाता है और मुझे मॉडल का वारिस करने की इजाजत देता है?

उत्तर

6

उपयोग semantic_fields_forinputs के बजाय:

f.inputs 'Something' do 
    f.semantic_fields_for :person do |p| 
    p.input :name 
    p.input :surname 
    end 
    f.input :account 
end 
संबंधित मुद्दे