最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Mongoose經(jīng)常返回e11000 error的原因分析

 更新時間:2017年03月29日 10:17:21   作者:多客博圖  
這篇文章主要給大家分析了Mongoose經(jīng)常返回e11000 error的原因,文中介紹的非常詳細(xì),對大家具有一定的參考價值,需要的朋友可以們下面來一起看看吧。

發(fā)現(xiàn)問題

最近在工作中遇到了一個問題,在定義了schema之后,每一次save都會報E11000,但是db.xxx.find()里面根本就沒有沖突的條目,什么情況呢?

問題分析

可能問題出在定義的schema的成員使用了unique,比如:

var CatalogSchema = new Schema({
 idCat: {
 type: String,
 default: '',
 trim: true,
 unique: 'Id should be unique!',
 required: 'Id cannot be blank'
 },
 titleCat: {
 type: String,
 default: '',
 trim: true,
 unique: 'Title should be unique!',
 required: 'Title cannot be blank'
 }
 });

mongoose.model('Catalog', CatalogSchema);

unique表示,不能沖突,迷惑的地方就是,沒有沖突啊,其實還有一種可能,或許你壓根想不到,就是確實沖突了,因為你給成員改名了。

用mongodb的命令行工具查看就知道:

> db.catalogs.getIndexes()
[
 {
 "v" : 1,
 "key" : {
  "_id" : 1
 },
 "name" : "_id_",
 "ns" : "ocr-dev.catalogs"
 },
 {
 "v" : 1,
 "unique" : true,
 "key" : {
  "name" : 1
 },
 "name" : "name_1",
 "ns" : "ocr-dev.catalogs",
 "background" : true
 },
 {
 "v" : 1,
 "unique" : true,
 "key" : {
  "title" : 1
 },
 "name" : "title_1",
 "ns" : "ocr-dev.catalogs",
 "background" : true
 },
 {
 "v" : 1,
 "unique" : true,
 "key" : {
  "idCat" : 1
 },
 "name" : "idCat_1",
 "ns" : "ocr-dev.catalogs",
 "background" : true
 },
 {
 "v" : 1,
 "unique" : true,
 "key" : {
  "titleCat" : 1
 },
 "name" : "titleCat_1",
 "ns" : "ocr-dev.catalogs",
 "background" : true
 }
]

問題解決

里面的name和title就是之前的名字,改成了idCat和titleCat,但是成員還是會在mongodb里面,所以,你要做的就是刪除這個collection然后在重新運(yùn)行mongoose了:

> db.catalogs.drop()
false
> db.catalogs.getIndexes()
[ ]

然后再在代碼里面插入就不會有問題了。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • node中的密碼安全(加密)

    node中的密碼安全(加密)

    這篇文章主要介紹了node中的密碼安全(加密),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-09-09
  • node.js中的fs.existsSync方法使用說明

    node.js中的fs.existsSync方法使用說明

    這篇文章主要介紹了node.js中的fs.existsSync方法使用說明,本文介紹了fs.existsSync方法說明、語法、接收參數(shù)、使用實例和實現(xiàn)源碼,需要的朋友可以參考下
    2014-12-12
  • 淺析Node.js查找字符串功能

    淺析Node.js查找字符串功能

    今天做項目的時候需要的一個問題,想查找一個字符串,但是忘記了,具體在那個文件里了,于是就想起來了node.js,毫無壓力的找到了這個字符串,分享給大家
    2014-09-09
  • Node.js 獲取微信JS-SDK CONFIG的方法示例

    Node.js 獲取微信JS-SDK CONFIG的方法示例

    這篇文章主要介紹了Node.js 獲取微信JS-SDK CONFIG的方法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • Node.js中的模塊機(jī)制學(xué)習(xí)筆記

    Node.js中的模塊機(jī)制學(xué)習(xí)筆記

    這篇文章主要介紹了Node.js中的模塊機(jī)制學(xué)習(xí)筆記,本文講解了CommonJS模塊規(guī)范、Node模塊實現(xiàn)過程、模塊調(diào)用棧、包與NPM等內(nèi)容,需要的朋友可以參考下
    2014-11-11
  • Node.js簡單入門前傳

    Node.js簡單入門前傳

    Node.js 是一個基于Chrome JavaScript 運(yùn)行時建立的一個平臺。接下來通過本文給大家分享node.js 入門前傳,感興趣的朋友一起看看吧
    2017-08-08
  • Node.js EventEmmitter事件監(jiān)聽器用法實例分析

    Node.js EventEmmitter事件監(jiān)聽器用法實例分析

    這篇文章主要介紹了Node.js EventEmmitter事件監(jiān)聽器用法,結(jié)合實例形式分析了EventEmmitter事件監(jiān)聽器相關(guān)函數(shù)與使用技巧,需要的朋友可以參考下
    2019-01-01
  • k8s node節(jié)點(diǎn)重新加入master集群的實現(xiàn)

    k8s node節(jié)點(diǎn)重新加入master集群的實現(xiàn)

    這篇文章主要介紹了k8s node節(jié)點(diǎn)重新加入master集群的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • Node.js包管理器Yarn的入門介紹與安裝

    Node.js包管理器Yarn的入門介紹與安裝

    大家都知道在yarn發(fā)布之前,所有Nodejs開發(fā)者用的都是npm包管理工具,而npm工具存在挺多難以忍受的詬病,包括安裝速度慢、每次都要在線重新安裝等問題,而yarn也是為了解決npm當(dāng)前所存在的問題而出現(xiàn)的。本文給大家介紹了包管理器Yarn,以及安裝方法。下面來一起看看。
    2016-10-10
  • 利用nodejs讀取圖片并將二進(jìn)制數(shù)據(jù)轉(zhuǎn)換成base64格式

    利用nodejs讀取圖片并將二進(jìn)制數(shù)據(jù)轉(zhuǎn)換成base64格式

    這篇文章主要介紹了利用nodejs讀取圖片并將二進(jìn)制數(shù)據(jù)轉(zhuǎn)換成base64格式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08

最新評論

佛学| 岳普湖县| 临清市| 荔波县| 和田市| 舞阳县| 忻州市| 青冈县| 托克托县| 崇礼县| 福清市| 铁力市| 天祝| 原平市| 永和县| 长顺县| 天峨县| 江川县| 彭阳县| 彰化市| 武强县| 那曲县| 南投市| 海原县| 安化县| 界首市| 鹿邑县| 五华县| 休宁县| 孟州市| 高淳县| 清苑县| 叶城县| 安顺市| 体育| 凤山市| 水城县| 陕西省| 康乐县| 光山县| 庆城县|