diff --git a/src/backend/src/track/track.controller.ts b/src/backend/src/track/track.controller.ts index 6ace610..20942f5 100644 --- a/src/backend/src/track/track.controller.ts +++ b/src/backend/src/track/track.controller.ts @@ -28,7 +28,7 @@ export class TrackController { async getFile(@Res({ passthrough: true }) res: Response, @Param('id') id: number): Promise { const track = await this.service.findOne(id); const fileName = `${track.artist} - ${track.song}.${this.configService.get(EnviromentEnum.FORMAT)}`; - const filePath = createReadStream(resolve(__dirname, '..', this.configService.get(EnviromentEnum.DOWNLOADS_PATH), fileName)); + const filePath = createReadStream(resolve(__dirname, '..', this.configService.get(EnviromentEnum.DOWNLOADS_PATH), track.playlist.name, fileName)); res.set({'Content-Disposition': `attachment; filename="${fileName}`}); return new StreamableFile(filePath); } diff --git a/src/backend/src/track/track.service.ts b/src/backend/src/track/track.service.ts index 0c61130..7b24fb1 100644 --- a/src/backend/src/track/track.service.ts +++ b/src/backend/src/track/track.service.ts @@ -37,7 +37,7 @@ export class TrackService { } findOne(id: number): Promise { - return this.repository.findOneBy({ id }); + return this.repository.findOne({where: {id}, relations: ['playlist']}); } async remove(id: number): Promise {