Meteor,MongoDB和手册参考

时间:2014-02-24 02:16:22

标签: mongodb meteor normalization

我正在为我的Meteor项目构建一个问答系统。我有3个集合:一个名为“Questions”,一个名为“Answers”,另一个供管理员手动确定当天的问题,名为“今天”。

所有收集的答案都将引用当天的问题。我想弄清楚的是如何为“Answers”集合制作插入语句。在这些字段中,它应该添加存储在“今天”中的问题的ObjectId。

Answers.insert({
  user: Meteor.userId(), 
  date: new Date(),
  answer: answer,
  questions_id: **here is where I would like the ObjectId of the current question**
})

如何在ObjectId集合中引用和插入属于某个字段的Today值(让我们调用字段QOD)?如果你有一个实际例子的答案,那就太好了。我没那么有经验,有人可以在不显示的情况下向我描述解决方案。感谢。

当然,我还要弄清楚如何稍后发布这些内容。但是当我到达那里时,我会越过那条路。

1 个答案:

答案 0 :(得分:1)

如果Answers需要引用Questions的记录,那么您需要获取该记录,并在_id中插入的对象中包含Answers字段:

var question = Questions.findOne({...criteria...});
Answers.insert({
  user: Meteor.userId(),
  date: new Date(),
  answer: answer,
  questionId: question._id
});

希望这会有所帮助。我在你的问题中看到“条目”而不是“答案”,所以你可能想澄清一下。此外,您可能希望在“问题”集合中有一个单独的字段,而不是单独的“今天”集合,该字段会将某些问题标记为被选为“每日问题”。