मैं नेस्ड रूपों और जटिल रूपों के रेलसकास्ट एपिसोड का पालन कर रहा हूं। एक ही रूप में एकाधिक मॉडल बनाने के समय मैं बैच मॉडल में घोंसला वाले नमूना मॉडल के लिए रिकॉर्ड संपादित, अपडेट, डिलीट और बनाने में सक्षम था।ने पैरा 'नमूने' के लिए हैश (एरे मिला)
मैं लंबे समय से अपना सिर तोड़ रहा हूं और साथ ही साथ खोज करने की कोशिश की लेकिन इस समस्या को हल करने के लिए कोई सही समाधान नहीं मिला।
मेरी विकास लॉग फ़ाइल मुझे निम्न त्रुटि देता है।
त्रुटि संदेश:
<%= form_for @batch do |f| %>
......
<%= f.fields_for :samples do |s_form| %>
.... s_form things
<% end %>
<% end %>
अपने मॉडल ही शामिल हैं:
Status: 500 Internal Server Error
expected Hash (got Array) for param `samples'
मेरी नियंत्रक में
मैं इस
def update
@batch = Batch.find(params[:id])
respond_to do |format|
if @batch.update_attributes(params[:batch])
flash[:notice] = 'Successfully updated Batch.'
format.html { redirect_to(@batch) }
format.xml { head :ok }
else
format.html { render :action => "edit" }
format.xml { render :xml => @batch.errors, :status => :unprocessable_entity }
end
end
end
मेरे विचार की तरह अद्यतन कार्रवाई कुछ इस तरह है सामान:
has_many :samples, :dependent => :destroy
accepts_nested_attributes_for :samples, :reject_if => lambda { |a| a[:content].blank? }, :allow_destroy => true
सभी सुझावों की सराहना की जाती है।
मैं जब मेरे रूप में 'text_field_tag' का उपयोग कर, क्योंकि मैं रेल-2-शैली आर्ग की आपूर्ति की है जब मैं रेल 3. यदि आप देखते हैं अपने आप को बिल्कुल भी कर रही चल रहा था एक ऐसी ही समस्या का सामना किया? यदि नहीं, तो क्या आप अपने विचार की संपूर्णता प्रदान कर सकते हैं? (शायद pastie.org पर) – JellicleCat
मैं इस त्रुटि संदेश में भाग गया जब तारों की सरणी में कुछ शून्य तत्व थे। –