Typeorm Postgres地图嵌套关系

时间:2019-10-07 13:29:49

标签: javascript node.js postgresql nestjs typeorm

我有四个桌子。

PASSENGER(USER_ID)> USER(AIRPORT_ID)> AIRPORT(CITY_ID)> CITY(COUNTRY_ID)> COUNTRY。

我需要从一个数据库中获取DB乘客ID,用户名,机场名,城市名和国家名。像这样:

{passengerId: 1, userName: 'Test', airportName: 'TestAirport', city: 'TestCity', country: 'TestCountry'}

我尝试这样做。

但是它返回了我的嵌套对象:

await this.createQueryBuilder('passenger_user')
      .leftJoinAndSelect('passenger_user.user', 'user')
      .leftJoinAndSelect('user.homeAirport', 'airport')
      .leftJoinAndSelect('airport.city', 'city')
      .leftJoinAndSelect('city.country', 'country')
      .select([
        'passenger_user',
        'user',
        'airport',
        'city',
        'country'
      ])
      .where('passenger_user.email = :email', {email})
      .getOne();
{
  passenger: id,
  user: {userName: 'Test',
        airport:{
          airportName: 'TestAirport'
         ...
      }
  }
}

0 个答案:

没有答案