用Mongoose插入文档
这是我的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
不知道这个错误是什么意思 – 我该如何解决?
插入中的对象语法不正确 – 它必须是正确的JSON,除非您使用点符号作为@krl解释。
假设你正在使用Mongoose:
db.deals.insert({ deal: { dealid: '1', title: 'deal' }, details: { detail: 'Free Food', price: 200 } });
要使用点符号指定或访问embedded式文档的字段,请将embedded文档名称与点(。)和字段名称连接起来,并用引号括起来(单引号和双引号都可接受)(请参见文档>点符号>embedded式文档 ):
db.deals.insert({ 'deal.dealid': '1', 'deal.title': 'deal', 'details.detail': 'Free Food', 'details.price': 200 })
该调用中的JSON格式无效。 尝试这个:
db.deals.insert({ deal: { dealid: '1', title: 'deal' }, details: { detail: 'Free Food', price: 200 } });