我发现节点控制器、数据库(mongodb)和引擎模板jade之间存在一个罕见的问题。我展示了这段代码,然后我向你解释。
代码
控制器:
router.get('/get_my_buildings', function(req, res)
{
if(req.session && req.session.user && (req.session.user.rol=="Admin" || req.session.user.rol=="superAdmin"))
buildingDB.getBuilding({admin_id:req.session.user._id}, function(results)
{
if(results.error==1 || results.result.length==0) res.render('resource_not_found');
else res.render('buildings/admin_buildings', {title:"WELLCOME", user:req.session.user, buildings: results.result});
});
else res.render('users/loggin', {title:"LOGGING"});
});
翡翠:
div(style="display: table;")
for building in buildings
div(style="display: table-row;" class="search_hit")
div(style="display: table-cell;" class="not_search")
span.glyphicon.glyphicon-map-marker
div(style="display: table-cell;" class="inline") #{building.address[0].address}
div(style="display: table-cell;" class="inline") #{building.address[0].city}
div(style="display: table-cell;" class="inline") #{building.address[0].province}
div(style="display: table-cell;" class="inline not_search input-group input-group-sm")
a(type="button" href="/setup_building/#{building.address[0]._id}" class="btn btn-info inline")
span.glyphicon.glyphicon-tags.right-margin
|Setup
else
li I´m sorry, there is no building to show.
我发现的问题是:href="/setup_building/#{building.address[0]_id}"始终在id处减去一个,而不是应该写入的。例如,应该写入的id为:545d384b9c33e76c07ba510d,但它写入:545d384 b9c33 e76c07 ba510e
其他日期都是对的。我做错了什么??
非常感谢
附言:我正在使用快速
我现在知道问题了。这是我提出"所有建筑"请求时的结果:
{
"_id": "545d384b9c33e76c07ba510d",
...
"address": [{
...
"_id": "545d384b9c33e76c07ba510e"
}]
}, {
"_id": "545d5afc8e0295001bdf44e0",
...
"address": [{
...
"_id": "545d5afc8e0295001bdf44e1"
}]
}
在一个CCD_ 2上有两个非常相似的CCD_。building
的id
和address
对象的_id
,它们非常相似:
building: 545d384b9c33e76c07ba510d
address: 545d384b9c33e76c07ba510e