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存在。 題外話