Вложенный Json из вложенных запросов MySQL в Nodejs / ExpressJs - PullRequest
0 голосов
/ 03 декабря 2018

Я извлекаю данные из базы данных mysql в nodejs / expressjs и хочу создать из нее вложенный json.

Я хочу создать объект Json следующим образом:

[
{id : 1,countryName:'USA',population:10000,
cities : [
{id:1,cityName:'NY',countryId:1},{id:2,cityName:'Chicago',countryId:1}
]
},
{id : 2,countryName:'Canada',population:20000,
cities : [
{id:1,cityName:'Toronto',countryId:2},{id:2,cityName:'Ottawa',countryId:2}
]
}

]

вот мойкод в ExpressJs, но он дает мне пустой массив JSON

app.get("/checkJson",function(req,res){
  var country = {};

var outerobj = {};
 var outerArray = [];

   conn.query("select * from country",function(err,result){
     for(var i = 0 ;i<result.length;i++){
        var cityobj = {};
        var city = [];
       conn.query("select * from city where countryId ="+result[i].id,function(err,cityResult){
         for(var j = 0;j<cityResult.length;j++){
           cityobj = {cityName:cityResult[j].name,countryId:cityResult[j].countryId};
           city.push(cityobj);
         } //end  city forloop

       }) //end city Query

       outerobj = {id:result[i].id,countryName:result[i].name,pop:result[i].population,cities:city};
       outerArray.push(outerobj);

     } //end country forloop
   }) // end country query
   console.log(outerArray);
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...