mongodb的model名稱細節

最近研究api設計,順便研究了下mongodb,教程沒有仔細看過,因此使用過程當中也遇到了一些詭異的現象。javascript

好比我使用中發現,我建立的模型名稱,在對應數據庫的collections內的名稱不一致。我很納悶,好比我建立的以下:java

const PersonModel = Mongoose.model("person", {
  firstname: String,
  lastname: String
});

當我將一條數據寫入後,用工具Robo 3T發現,名稱竟然變成了people。git

後來查了相關資料,原來mongodb有本身的一套規則,詳細的規則,好比我這條:mongoose/lib/utils.js。固然這個是歷史版本的例子了。關於這個現象,最新文檔中也指出:github

The first argument is the singular name of the collection your model is for. Mongoose automatically looks for the plural version of your model name. For example, if you usemongodb

const MyModel = mongoose.model('Ticket', mySchema);

Then Mongoose will create the model for your tickets collection, not your ticket collection.數據庫

通常狀況他會建立一個複數的model,這種person算特殊的了。因此你寫得model不必定在查詢的時候會同樣,即使不同也不要驚訝哦~api

相關文章
相關標籤/搜索