Node.js mongoDB+;mongoose:为分层数据选择正确的模式
我是mongoDB的新手,在一个节点项目中,我使用mongoose为我的数据库创建一个模式。我已经明白,在我的情况下,我应该使用嵌入式数据,而不是通过引用。() 我需要存储在数据库中的结构如下所示:Node.js mongoDB+;mongoose:为分层数据选择正确的模式,node.js,mongodb,mongoose,Node.js,Mongodb,Mongoose,我是mongoDB的新手,在一个节点项目中,我使用mongoose为我的数据库创建一个模式。我已经明白,在我的情况下,我应该使用嵌入式数据,而不是通过引用。() 我需要存储在数据库中的结构如下所示: 书 |头衔 ||章 || |内容(html文件的url) 来自mySQL世界,我试图理解noSQL数据库的概念,我想知道如何设计mongoose模式 Thx,首先看一下: 我认为没有比福勒更能解释nosql的权威了。尤其是了解他的sql背景 其次,MongoDB遵循json模式。如果您知道如何使
- 书
- |头衔
- ||章
- || |内容(html文件的url)
我非常喜欢MongoDB,因为它可以与一些很棒的JS工具(如underline.JS)结合使用,用于各种数据操作。您可以在MongoDB文档中嵌套文档和文档数组:
db.books.findOne();
可以返回一个JSON:
{
isbn:"253GHST78F6",
title:"some book",
author:"Earnest Hemmingway",
chapters:[
{title:"chapter 1",content:"http://api.com/chapters/1.html"},
{title:"chapter 2",content:"http://api.com/chapters/2.html"}
]
}
但是,在MongoDB中为集合建模时,还要记住以下几点:
这可能会受益于您提供的关于一些建议的模式格式的更多内容。然后实际询问每种方法的“优缺点”,同时给出一些使用示例。看起来这就是你想要的。目前,这个问题过于宽泛。有人可能会关闭它。不要害羞,编辑。thx,我会很快编辑我的文章。thx对于电影,我刚刚看了,很好的发现。很高兴能帮助-如果你喜欢,请接受答案:)如果嵌套搜索不好,如果没有真正的关系(比如关系数据库),我会创建一个新的收藏,在那里更容易获得x作者的所有书籍,或者我可以只查询上面的模式吗?@kevinius是的,您可以通过ObjectId在集合之间链接。