繁体   English   中英

猫鼬插入文件

[英]Document insert with Mongoose

这是我的猫鼬模式:

var DealSchema = new Schema({
    deal:{
        dealid:{
            type: String,
            require: true,
            unique: true,
        },
        title: String,
    },

    // Embedded sub-document
    details: {
        detail: String,
        price: Number   // USE: deal.details.price
    }
})

我的插入语句如下:

db.deals.insert({
    deal.dealid: '1',
    deal.title: 'deal',

    details.detail: 'Free Food',
    details.price: 200
})

我得到的错误:

SyntaxError: missing : after property id @(shell):2:4

不知道此错误意味着什么-我该如何解决?

要使用点符号指定或访问嵌入式文档的字段,请使用点(。)和字段名称将嵌入式文档名称连接起来,并用引号引起来(单引号和双引号均可接受)(请参见文档>点符号>嵌入式文档 ):

db.deals.insert({
    'deal.dealid': '1',
    'deal.title': 'deal',

    'details.detail': 'Free Food',
    'details.price': 200
})

您插入中的对象语法不正确-除非您使用@krl解释的点号,否则它必须是正确的JSON。

假设您正在使用猫鼬:

db.deals.insert({
    deal: {
        dealid: '1',
        title: 'deal'
    },
    details: {
        detail: 'Free Food',
        price: 200
    }
});

该调用中的JSON格式无效。 尝试这个:

db.deals.insert({
    deal: {
           dealid: '1',
           title: 'deal'
    },

    details: {
           detail: 'Free Food',
           price: 200
    }
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM