我是nodejs,mongodb的新手,并使用meteor启动了一个项目。到目前为止,一切都很顺利。
想象一下,我想创建一个网站来管理住宿和他们的预订请求。设置住宿非常简单..现在我有全球选择,例如设置“旺季”,“淡季”,“中期”的时间段......或每个住宿常见的文本。
通常我只是在我的住宿模板中写下来,但我想在MongoDb中保存这个的原因是我希望网站管理员能够编辑这些内容。
我在哪里存储这些“全局设置”?我在哪里存储属于每个住宿的文本?
现在我已经创建了一个名为“options”的集合,并创建了一个名为“accomodations”的文档,其中包含不同的季节和消息..但这感觉就像是一个糟糕的工作。
希望你明白!
答案 0 :(得分:0)
如果你想利用MongoDB的优势,组织一个包含关系的MongoDB数据库结构是很棘手的。
创建可由其他人引用的相关集合是在多个集合之间共享记录的唯一方法。 MongoDB理想情况下处理关系的主要方式是嵌入文档,但是你失去了被其他文档引用的能力。
如果这是你感受MongoDB这种压力的唯一情况,那么外部参考并不可怕。像mongoose这样的库可以帮助你管理模式和关系。但是,如果您发现自己严重依赖这种模式,传统的SQL数据库可能会更适合您。
答案 1 :(得分:0)
拥有“选项”集合来存储网站范围的设置是完全有效的。
{
someOption: true,
anotherOption: 8500
}
我建议使用Astronomy包来帮助您定义数据结构。
如果您编辑答案以更好地解释各种数据以及它们之间的关系,我可以编辑我的答案以提供更多详细信息或建议我自己如何构建它。