update를 repository로 빼서 작성했는데 오류가 나옵니다
555
작성한 질문수 9
boards.service.ts 코드입니다.
import { Injectable, NotFoundException } from '@nestjs/common';
import { InjectRepository } from '@nestjs/typeorm';
import { BoardStatus } from './board-status.enum';
import { Board } from './board.entity';
import { BoardRepository } from './board.repository';
import { CreateBoardDto } from './dto/create-board.dto';
@Injectable()
export class BoardsService {
constructor(
@InjectRepository(Board)
private boardRepository: BoardRepository,
) {}
createBoard(createBoardDto: CreateBoardDto): Promise<Board> {
return this.boardRepository.createBoard(createBoardDto);
}
async getBoardById(id: number): Promise<Board> {
console.log(id, 'ididid');
return this.boardRepository.getBoardById(id);
}
async deleteBoard(id: number): Promise<void> {
const result = await this.boardRepository.delete(id);
if (result.affected == 0) {
throw new NotFoundException(`Can't find Board with id ${id}`);
}
}
async updateBoardStatus(id: number, status: BoardStatus): Promise<Board> {
const board = await this.getBoardById(id);
board.status = status;
await this.boardRepository.save(board);
return board;
}
}
board.repository.ts 코드입니다
import { Injectable, NotFoundException } from '@nestjs/common';
import { InjectRepository } from '@nestjs/typeorm';
import { BoardStatus } from './board-status.enum';
import { Board } from './board.entity';
import { BoardRepository } from './board.repository';
import { CreateBoardDto } from './dto/create-board.dto';
@Injectable()
export class BoardsService {
constructor(
@InjectRepository(Board)
private boardRepository: BoardRepository,
) {}
createBoard(createBoardDto: CreateBoardDto): Promise<Board> {
return this.boardRepository.createBoard(createBoardDto);
}
async getBoardById(id: number): Promise<Board> {
console.log(id, 'ididid');
return this.boardRepository.getBoardById(id);
}
async deleteBoard(id: number): Promise<void> {
const result = await this.boardRepository.delete(id);
if (result.affected == 0) {
throw new NotFoundException(`Can't find Board with id ${id}`);
}
}
async updateBoardStatus(id: number, status: BoardStatus): Promise<Board> {
const board = await this.getBoardById(id);
board.status = status;
await this.boardRepository.save(board);
return board;
}
}
[Nest] 12296 - 2023. 01. 26. 오후 4:25:43 ERROR [ExceptionsHandler] this.boardRepository.getBoardById is not a function
TypeError: this.boardRepository.getBoardById is not a function
at BoardsService.getBoardById (C:\Users\lgh38\Desktop\GH\nest-board-app\src\boards\boards.service.ts:22:33)
at BoardsService.updateBoardStatus (C:\Users\lgh38\Desktop\GH\nest-board-app\src\boards\boards.service.ts:33:30)
at BoardsController.updateBoardStatus (C:\Users\lgh38\Desktop\GH\nest-board-app\src\boards\boards.controller.ts:44:31)
오류 내용은 위와 같습니다. 자세히 보면 this.boardRepository.getBoardById is not a function이라고 나오는데 제가 생각 했을 땐 처음 service의 updateBoardStatus 함수에서 getBoardById 함수로 넘겨주고 또 getBoardById 함수가 repository 안에 있는 getBoardById 함수에게 값을 넘겨서 두 번 리턴 받아서 해결 될 줄 알았는데 에러가 나오더라구요..
오히려 분리를 안 시켰을 땐 오류가 안 나옵니다 무슨 이유일까요..?
답변 0
로거 객체 질문
0
59
1
회원가입 기능 구현 버전 변경에 따른 코드수정(해당 사항은 업데이트 예정이 없나요?)
0
78
1
파일을 찾지 못하는 오류가 계속 뜹니다
0
102
1
services와 repository 파일에서 해야하는 작업
0
122
1
커스텀 파이프에서 value의 타입이 string 이 아닐때
0
169
1
nestjs 기본 구조 설명에서 궁금한게 있습니다.
0
178
0
typeorm ^10.0.2 버전 사용시 No metadata for "BoardRepository" was found. 오류 발생 해결방법.
3
275
1
Model과 Dto의 차이점을 좀 쉽게 알수 있을까요?
0
681
1
강의 자료 관련해서 글 남깁니다.
0
482
1
"ID로 특정 게시물 가져오기" 부분이 잘못되었습니다.
0
453
1
선생님 nestjs랑 Nextjs랑 같이 연동해서 작업하는거 어떻게 생각하시나요?
0
2511
1
쌤 근데 enum 말고 type 으로 타입선언해주면안될까요?
0
613
1
pgAdmin 4에서 데이터 베이스 만들어주기 부분
0
645
1
강의 자료 관련해서 질문있습니다.
0
463
2
port 5432 failed: recived invalid response to ssl negotiation
0
767
1
repository.ts 에서 method 를 가져 오고 싶은데, 해당 메소드가 없다고 뜨네요
0
400
1
컨트롤러에선 async/await 사용하지 않아도 되는 이유
1
692
1
마지막 강의 영상에서 배포 자료는 어디서 볼 수 있나요?
0
387
1
No repository for 질문
0
526
1
특정 게시물을 찾을 때 없는 경우 에러 메세지 생성 에러
0
476
1
XML파일도 링크 공유해주시면 감사하겠습니다.
0
348
1
회원가입 기능 구현 중 오류가 났습니다.
0
498
1
NotFoundException
0
711
1
도와주세요 ㅠㅠ!!
0
1082
2





