我試圖將一些查找表數據保存到YAML文件,以便稍後當我需要在另一臺機器上設置我的應用程序時,我可以將數據作爲種子數據加載。如何從YAML文件加載一些ActiveRecord模型並將它們保存到數據庫?
數據就像選擇選項一樣,它的設置非常多,所以不用擔心序列化和反序列化之間的實時數據更改。
我有輸出這樣的數據...
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>
什麼是正確的方法來做到這一點?
您使用的是哪個版本的Rails? – 2010-02-26 03:50:01
我正在使用Rails 2.3.5 – Ethan 2010-02-26 04:27:52