查询Mongodb子文档错误将循环结构转换为JSON [英] Querying Mongodb Subdocuments error Converting circular structure to JSON
本文介绍了查询Mongodb子文档错误将循环结构转换为JSON的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个包含子文档数组的文档:
I have a document with an array of subdocuments:
{
"company": "test plc",
"address": [
{
"addr1": "37",
"addr2": "",
"addr3": "test",
"addr4": "",
"addrcity": "",
"addrcounty": "test",
"addrpostcode": "test"
},
{
"addr1": "37",
"addr2": "",
"addr3": "test",
"addr4": "",
"addrcity": "",
"addrcounty": "test",
"addrpostcode": "test"
},
{
"addr1": "37",
"addr2": "",
"addr3": "test",
"addr4": "",
"addrcity": "",
"addrcounty": "test",
"addrpostcode": "test"
}
],
"contacts": [
{
"name": "test",
"surname": "testing",
"title": "master"
},
{
"name": "test",
"surname": "testing",
"title": "master"
}
]
}
我想做的是通过搜索contacts.surname
属性返回文档列表.
What I would like to do is return a list of documents by searching the contacts.surname
property.
var leads = Lead.find({"contact.surname":req.params.name});
这会导致错误将圆形结构转换为JSON",但我不确定为什么.
This causes an error "Converting circular structure to JSON" but I am not sure why.
已添加修改内容:
这是我的收集模式:
var leadsSchema = new Schema({
company: String,
address:
[
{
addr1: String,
addr2: String,
addr3: String,
addr4: String,
addrcity: String,
addrcounty: String,
addrpostcode: String
}
],
contacts:
[
{
name: String,
surname: String,
title: String
}
]
});
var Lead = mongoose.model('leads', leadsSchema);
这是我的两个路由器:
这将返回集合查找中的所有内容:
This returns all from the collection find:
router.get('/', function(req, res) {
Lead.find({}).exec(function(err, leads) {
res.send(leads);
});
});
这会导致循环错误:
router.get('/findByContactName/:surname', function(req, res) {
var leads = Lead.find({"contacts.surname":req.params.name});
res.send(leads);
});
推荐答案
尝试一下
router.get('/findByContactName/:surname', function(req, res){
Lead.find({"contacts.surname":req.params.name}).exec(function(err, leads){
res.send(leads);
});
这篇关于查询Mongodb子文档错误将循环结构转换为JSON的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文