๐Ÿ˜Ž ๊ณต๋ถ€ํ•˜๋Š” ์ง•์ง•์•ŒํŒŒ์นด๋Š” ์ฒ˜์Œ์ด์ง€?

[Nest JS ๋กœ CRUD ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ] (16) ID๋ฅผ ์ด์šฉํ•ด์„œ ํŠน์ • ๊ฒŒ์‹œ๋ฌผ ๊ฐ€์ ธ์˜ค๊ธฐ ๋ณธ๋ฌธ

๐Ÿ‘ฉ‍๐Ÿ’ป ๋ฐฑ์—”๋“œ(Back-End)/Nest js

[Nest JS ๋กœ CRUD ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ] (16) ID๋ฅผ ์ด์šฉํ•ด์„œ ํŠน์ • ๊ฒŒ์‹œ๋ฌผ ๊ฐ€์ ธ์˜ค๊ธฐ

์ง•์ง•์•ŒํŒŒ์นด 2023. 6. 3. 23:05
728x90
๋ฐ˜์‘ํ˜•

<๋ณธ ๋ธ”๋กœ๊ทธ๋Š” John Ahn ์˜ ์œ ํŠœ๋ธŒ๋ฅผ ์ฐธ๊ณ ํ•ด์„œ ๊ณต๋ถ€ํ•˜๋ฉฐ ์ž‘์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค :-)>

=> ๋”ฐ๋ผํ•˜๋ฉด์„œ ๋ฐฐ์šฐ๋Š” NestJS

 

๐Ÿงธ ID๋ฅผ ์ด์šฉํ•ด์„œ ํŠน์ • ๊ฒŒ์‹œ๋ฌผ ๊ฐ€์ ธ์˜ค๊ธฐ

๐ŸŽ€ Service ์— Repository ๋„ฃ์–ด์ฃผ๊ธฐ 

: Board ์„œ๋น„์Šค ์— Board ๋ ˆํŒŒ์ง€ํ† ๋ฆฌ๋ฅผ ๋„ฃ๊ธฐ

: ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—๊ฑฐ ๊ฐ€์ ธ์˜ฌ ๋•Œ TypeORM ์“ธ ๋•Œ์—๋Š” Repository ํŒจํ„ด ์‚ฌ์šฉํ•จ

: @injdectRepository ๋Š” ์„œ๋น„์Šค์—์„œ BoardRepository ๋ฅผ ์ด์šฉํ•˜๊ธฐ์œ„ํ•ด boardRepository ๋ณ€์ˆ˜์— ๋„ฃ๋Š”๋‹ค

@Injectable()
export class BoardsService {
    constructor(
        @InjectRepository(BoardRepository)
        private boardRepository: BoardRepository,
    ){}
}

 

๐ŸŽ€ Service ์— getBoardById ๋ฉ”์†Œ๋“œ ์ƒ์„ฑํ•˜๊ธฐ

: typeOrm ์—์„œ ์ œ๊ณตํ•˜๋Š” findOne ๋ฉ”์†Œ๋“œ ์‚ฌ์šฉํ•˜๊ธฐ

: async await ์„ ์ด์šฉํ•ด์„œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ž‘์—…์ด ๋๋‚œ ํ›„ ๊ฒฐ๊ณผ๊ฐ’ ๋ฐ›์„ ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๊ธฐ

    // ID๋กœ ํŠน์ • ๊ฒŒ์‹œ๋ฌผ ๊ฐ€์ ธ์˜ค๊ธฐ
    @Get("/:id")
    getBoardByID(@Param("id") id:number) : Promise<Board> {
        return this.boardsService.getBoardById(id);
    }

 

 

 

728x90
๋ฐ˜์‘ํ˜•
Comments