मेरे पास एक रेल 3 फॉर्म है जो उपयोगकर्ता को मूल्यांकन के हिस्से के रूप में उत्तरों की सूची संपादित करने की अनुमति देता है।
मैं एक fields_for
पाश का उपयोग प्रत्येक पाठ इनपुट उत्पन्न करने के लिए:टेक्स्ट पर फ़ील्ड 3 फ़ील्ड हैश: अपेक्षित काम नहीं कर रहा है
एप्लिकेशन/मॉडल/assessment.rb:
class Assessment < ActiveRecord::Base
serialize :answers, Hash # answers is a t.text field used to store all answers.
end
एप्लिकेशन/देखें/आकलन/new.html.erb:
<p>Initialized answers: <%= @assessment.answers %></p>
<% item_counter = 0 %>
<% form.fields_for :answers do |answer_fields| %>
<% item_id = "item" + item_counter.to_s %>
<% item_counter = item_counter + 1 %>
<div class="field">
<%= answer_fields.label "the appropriate question, omitted for brevity" %>
<br/>
<% @assessment.answers[item_id] = "" %>
<%= answer_fields.text_field item_id, :value => @assessment.answers[item_id] %>
</div>
<% end %>
PROBLEM:fields_for
लूप शून्य पुनरावृत्ति करता है, कोई फ़ील्ड मुद्रित नहीं होता है।
("प्रारंभिक उत्तर:" के बावजूद सही तरीके से दिखा रहा है: {"a" => 143, "बी" => 42})
जहाँ तक मैं के लिए उपयोग किया जाता है आप एआर मॉडल के बीच एक रिश्ता है जब इतना मुझे यकीन है कि तुम क्यों हो सकता है आप अपने खुद के सहायक लिखना चाहिए इस सहायक के साथ जवाब के लिए खेतों रेंडर करने के लिए कोशिश कर रहे हैं नहीं कर रहा हूँ क्षेत्रों पता है या आंशिक – Bohdan
@ बोहडन प्रस्तुत करें: यह संभव है, इस पोस्ट से निर्णय लेना: http://stackoverflow.com/questions/1002963#4809844 –
ऐसा लगता है कि यह सहायक संग्रह को एक पैरा के रूप में स्वीकार करता है जिसे आप इसे <<% रूप में बदल सकते हैं। fields_for @ मूल्यांकन.answers करते हैं | answer_fields | %> '? – Bohdan