PHP中文网2017-05-02 09:21:57
建议按照mongoose文档进行学习。
(或者去搜索mongoose的相关技术博客,学好使用google)
简答一下吧:
mongodb有一大优势是schemaless的,也就是无需预设数据结构。而mongoose为什么又要定义数据类型呢?
mongodb的schemaless在当今需求快速变化的项目中有很大优势,而mongoose基于schema的模式并不是一个倒退,他只是为了开发方便。
你可以随时修改schema,而大部分情况下不需要整理数据库直接运行即可。
有一个描述了数据类型的schema,你可以更加简便地操作mongodb数据库。(也有oop的优势在内)
mongoose内置了类似于类型转换、default值等等基于schema的优势功能。
mongoose.model('Book', BookSchema)
是干嘛的向mongoose注册BookSchema在Book这个上model上。
所以后面你可以用mongoose.model('Book')
把这个model拿出来。
mongoose有schema、model、document的概念。
db.book.find({})
找不到数据请用db.books.find({})
db.books.find({})
mongoose会自己搞复数形式,显得比较专业,毕竟是collection嘛。
而且story还会复数成stories呢。
你在use blog
之后,可以通过show collections
mongoose会自己搞复数形式,显得比较专业,毕竟是collection嘛。
use blog
之后,可以通过show collections
知道有哪些个collection存在。题外话