Как на клиенте получить все вложенные данные postgreSQL + nestjs?
Суть проблемы следующая: имеется бэкэнд на nest.js, orm sequalize, бд PostgreSQL, есть несколько таблиц со связанными стобцами.
@Table({ tableName: 'posts' })
export class Post extends Model<Post> {
@Column({...})
id: number
@BelongsToMany(() => Step, () => PostSteps)
scrypt: Step[]
}
@Table({ tableName: 'steps' })
export class Step extends Model<Step> {
@Column({...})
id: number
@BelongsToMany(() => Act, () => StepActs)
content: Act[]
}
@Table({ tableName: 'acts' })
export class Act extends Model<Act> {
@Column({...})
id: number
@Column({...})
value: string[]
}
При запросе к таблице posts для получения одного поста по id, сервер возвращает объект поста свойство scrypt которого является массивом id строк из таблицы steps. А хотелось бы, что бы данный запрос возвращал вложенные данные а не просто id
async getPostById(id: number) {
const post = await this.postRepository.findOne({
where: { id },
include: { all: true }
})
return advice
}
возвращает
{
id: 1,
scrypt: [1, 2, 3]
}
а нужно
{
id: 1,
scrypt: [
{
id: 1,
content: [
{
id: 1,
value: ['someString']
}
]
}
]
}
Есть ли какой-то способ сделать это на стороне сервера?