Я хочу удалить ключевой team_id из следующего ответа:
{
"id": 14,
"name": "Angel Stadium of Anaheim",
"opened": "1966-04-19T00:00:00.000Z",
"capacity": 45517,
"location": "Anaheim, California",
"team_id": "95cbbe2a",
"team": {
"id": "95cbbe2a",
"name": "Los Angeles Angels",
"established_in": 1961,
"league": "American League",
"division": "West Division",
"logo": "https://upload.wikimedia.org/wikipedia/commons/7/79/Los_Angeles_Angels_of_Anaheim_Insignia.svg",
"number_of_titles":1
}
}
Код, который я использую сейчас, получает все данные с мест, сначала мне нужны все они, но в окончательный ответ Я хотел бы опустить ключ team_id:
const venues = await connection(VENUE_TABLE)
.limit(LIMIT_PER_PAGE)
.offset((page - 1) * LIMIT_PER_PAGE)
.select('*')
.orderBy('name');
const venuesWithTeam = await venues.reduce(
(promise, element) =>
promise.then(async (result) =>
result.concat({
...element,
team: await connection('team')
.where('id', element.team_id)
.select('*')
.first(),
})
),
Promise.resolve([])
);
Желаемое поведение будет:
{
"id": 14,
"name": "Angel Stadium of Anaheim",
"opened": "1966-04-19T00:00:00.000Z",
"capacity": 45517,
"location": "Anaheim, California",
"team": {
"id": "95cbbe2a",
"name": "Los Angeles Angels",
"established_in": 1961,
"league": "American League",
"division": "West Division",
"logo": "https://upload.wikimedia.org/wikipedia/commons/7/79/Los_Angeles_Angels_of_Anaheim_Insignia.svg",
"number_of_titles":1
}
}
Что я могу сделать, чтобы это произошло?