Tôi đang cố gắng lưu một số dữ liệu bảng tra cứu ra tệp YAML để sau này khi tôi cần thiết lập ứng dụng của mình trên một máy khác, tôi có thể tải dữ liệu dưới dạng dữ liệu giống.Làm cách nào để tải một số mô hình ActiveRecord từ tệp YAML và lưu chúng vào DB?
Dữ liệu là nội dung như các tùy chọn được chọn và nó được đặt khá nhiều, do đó, đừng lo lắng về việc thay đổi dữ liệu trực tiếp giữa tuần tự hóa và deserializing.
Tôi có đầu ra dữ liệu như thế này ...
file = File.open("#{RAILS_ROOT}/lib/tasks/questions/questions.yml", 'w')
questions = Question.find(:all, :order => 'order_position')
file << YAML::dump(questions)
file.close()
Và tôi có thể tải các tập tin như thế này ...
questions = YAML.load_file('lib/tasks/questions/questions.yml')
Tuy nhiên, khi tôi cố gắng tiết kiệm một câu hỏi tôi nhận được lỗi này ...
>> questions[0].save
NoMethodError: undefined method `save' for #<YAML::Object:0x2226b84>
Cách chính xác để làm điều này là gì?
Bạn đang sử dụng phiên bản Rails nào? –
Tôi đang sử dụng Rails 2.3.5 – Ethan