【发布时间】:2012-05-15 23:06:23
【问题描述】:
我有一堆记录存储在 mongodb 集合 (StudentRecord) 中。这些需要分解为具有嵌入式文档 StudentGrade 的 Student 类型的集合。出于某种原因,我用来执行此摄取的 rake 任务不断达到“堆栈级别太深”。我无法检测到任何递归调用,我正在使用 bundle exec 来执行它(ruby 1.9.2-p320)。
任务:parse_student_records =>:环境做 StudentRecord.all.each{|student_record| 学生 = Student.create({:name => student_record.name}) student.grades « Grade.create({:score => student_record.grade_score) 学生。保存! } 结尾 班级学生 包括 MongoMapper::Document 许多:等级 键:名称,字符串 结尾 班级成绩 包括 MongoMapper::EmbeddedDocument 键:grade_score,字符串 结尾将文档提取为独立文档而不是嵌入文档可以解决此问题..由于某种原因,嵌入会导致问题。
【问题讨论】:
标签: ruby-on-rails mongodb mongomapper