본문 바로가기
반응형

개발 기초 다지기69

과제 리팩토링 (메뉴 원하는 카체고리 순서로 정렬) 지난번 팀프로젝트에서 구현한 메뉴를 원하는 카테고리 순서로 조회하는 부분에서의 피드백을 받았다. 기존 코드는 숫자로 저장하여 order by를 통해 정렬한 후, 각 카테고리 텍스트를 매핑해주었는데 데이터베이스 자체에 메뉴의 카테고리 텍스트로 저장하는 것이 좋다는 피드백을 받은 것이다. 그래서 텍스트로 저장한 후, sort를 통해 정렬해서 내보내도록 리팩토링을 진행하였다. - 데이터베이스에서 불러오기 (텍스트로 저장된 menuType)async function readAll(restaurantId) { try { // 데이터베이스에서 메뉴를 읽어올 때 메뉴타입 순으로 정렬하여 가져오기 const menus = await prisma.menu.findMany({ where: { rest.. 2024. 6. 26.
복습 그동안 소소하게 궁금했던것들 정리 (스키마 관계 설정, 모듈 export default) 감사하게도 캠프 중 지금까지 공부했던 것 중 부족한 부분을 공부할 수 있는 시간을 주셨다. 안그래도 이해가 잘 가지 않는 부분을 적어놓고 주말중 복습을 진행할 예정이었는데, 이번 기회로 이 부분을 꼼꼼하게 채워나갈 수 있게 되었다.지금 내가 부족한 부분이 인증, 인가 미들웨어, 오류 처리, 트렌젝션, 로그 정도로 크게 나눌 수 있을 것 같다. 인증, 인가 부분은 지속적으로 프로젝트를 진행하며 계속 한 부분이긴하지만, 팀프로젝트에서 어쩌다보니 내가 CRUD만 주구장창 맡게되면서 생각보다 이해도가 높지 않다. (대신 CRUD랑 데이터베이스쪽은 생각보다 마스터가 되어있다.) 과거 들었던 강의들을 다시 듣고 구현했던 코드들을 다시 보며 공부를 진행하고있다. 아직 이 부분은 정리할 정도로 깔끔하게 마무리된 것 같.. 2024. 6. 25.
npm 글로벌 설치 오류 이번에 TypeScript를 배우기 시작하면서 TypeScript를 글로벌로 설치해야했다. 그리고 역시나 오류가 났다. 이놈의 맥북은 뭐가 한 번에 깔리는 일이 없다. 이번 기회에 매번 겪은 npm을 통해 global로 설치를 진행할 때 나타난 오류에대해 정리해보려 한다.npm i typescript -g 오류애초에 첫 접근부터 바로 오류가 나버렸다. npm이 글로벌하게 설치하려는 TypeScript 패키지를 저장할 디렉토리에 대한 권한 부족으로 발생했는데, macOS나 Linux 시스템에서는 시스템 레벨의 디렉토리에 npm 패키지를 글로벌하게 설치하려면 관리자 권한이 필요하다고 한다.해결 방법- npm의 글로벌 설치 경로 변경권한이 부족했기 때문에, npm의 글로벌 설치 경로를 사용자 홈 디렉토리 내의.. 2024. 6. 24.
Prisma의 connect 기능 과제와 팀플을 반복하며 기본적인 CRUD는 이해가 된 것 같고 이제 그 안에서 데이터를 조금 더 자유롭게 다룰 수 있도록 공부하고있다. 오늘은 그 중 connect 기능에 대해 정리해보려 한다.개발을 하다보면 데이터베이스의 테이블 하나만 이용하지 않는다. 한개의 테이블을 속 외래키를 사용해 여러 테이블과 연결시켜 데이터를 불러오고 정리하여 반환한다. 그 때 중요한 역할을 하는 것이 connect이다.connect란?connect는 Prisma에서 제공하는 기능 중 하나로, 관계형 데이터베이스의 관계를 설정하고 관리할 때 사용한다. 특히 외래 키(Foreign Key)를 사용하여 테이블 간의 관계를 설정하고 데이터를 연결하는 데 사용된다.- 역할관계 설정: connect는 데이터베이스 모델에서 정의된 관계.. 2024. 6. 21.
반응형