मैं कुछ लुकअप टेबल डेटा को वाईएएमएल फ़ाइल में सहेजने की कोशिश कर रहा हूं ताकि बाद में जब मुझे एक अलग मशीन पर अपना ऐप सेट अप करने की आवश्यकता हो तो मैं डेटा को बीज डेटा के रूप में लोड कर सकता हूं।मैं कुछ ActiveRecord मॉडल को YAML फ़ाइल से कैसे लोड कर सकता हूं और उन्हें डीबी में सहेज सकता हूं?
डेटा चुनिंदा विकल्पों की तरह सामान है, और यह बहुत अधिक सेट है, इसलिए धारावाहिक और deserializing के बीच बदल रहे लाइव डेटा के बारे में कोई चिंता नहीं है।
मैं उत्पादन इस तरह डेटा है ...
file = File.open("#{RAILS_ROOT}/lib/tasks/questions/questions.yml", 'w')
questions = Question.find(:all, :order => 'order_position')
file << YAML::dump(questions)
file.close()
और मैं इस तरह फ़ाइल को लोड कर सकते हैं ...
questions = YAML.load_file('lib/tasks/questions/questions.yml')
हालांकि, जब मैं एक सवाल मैं बचाने की कोशिश यह त्रुटि ...
>> questions[0].save
NoMethodError: undefined method `save' for #<YAML::Object:0x2226b84>
ऐसा करने का सही तरीका क्या है?
रेल का आप किस संस्करण का उपयोग कर रहे हैं? –
मैं रेल का उपयोग कर रहा हूँ 2.3.5 – Ethan