第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請問如何使用mongoose查詢內(nèi)嵌數(shù)據(jù)呢

請問如何使用mongoose查詢內(nèi)嵌數(shù)據(jù)呢

慕的地6264312 2018-07-23 21:57:35
const userSchema = new Schema({   name:{type:String},   clubnumber:{type:String},   memo:[{     memos:{type:String}   }] })數(shù)據(jù)結(jié)構(gòu)如上,現(xiàn)在是想匹配name和clubnumber,來查詢庫下的所有memodb.userModel.findOne({name:name,clubnumber:clubnumber},(e,d)=>{            console.log(d.memo);         })小弟這樣寫的話,控制臺出來的數(shù)據(jù)是[     { memos:xxx,id:xxxx},     { memos:xxx1,id:xxxxx} ]小弟想得到的數(shù)據(jù)結(jié)構(gòu)是     {memos1,memos2,memos3}//所有memos的一個數(shù)組小弟現(xiàn)在能想到用遍歷重新創(chuàng)建一個數(shù)組,但是有大神知道m(xù)ongoose有什么操作能直接獲得這樣的嗎,感激不盡~
查看完整描述

2 回答

?
FishWithSmile

TA貢獻(xiàn)1條經(jīng)驗 獲得超0個贊

Schema里memo數(shù)組里不存對象,直接放String不就可以嗎?
查看完整回答
反對 回復(fù) 2018-08-20
?
蝴蝶刀刀

TA貢獻(xiàn)1801條經(jīng)驗 獲得超8個贊

兩種做法:

1、在創(chuàng)建數(shù)組模型的時候去掉_id的選項。

//定義const userChildSchema = new Schema(
    { memos: { type: String } },
    { _id: false } //子對象里去掉_id);const userSchema = new Schema({    name: { type: String },    clubnumber: { type: String },    memo: [userChildSchema]
});//查詢userModel.findOne({ name: "nameeeeee" },
    { "memo": 1 },  //select
    null,    function (err, cursor) {        console.log(cursor.toJSON().memo)
    }
);

返回結(jié)果:

https://img1.sycdn.imooc.com//5b5dc7f60001f91805440222.jpg

2、mongo里可以只返回匹配的數(shù)組中的記錄。

具體做法參考:mongo官網(wǎng)

注:
  • 以上是本機運行的結(jié)果。

  • 使用的mongoose版本為:5.2.5

  • mongo版本為:3.4


查看完整回答
反對 回復(fù) 2018-07-29
  • 2 回答
  • 0 關(guān)注
  • 1209 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號