[✍️ Dev Log] 정송이 / 2021-05-17
@lovelysi0113 ci sta già lavorando.
Dal 17/5/2021.
Valutazione
Questa issue non è ancora stata valutata.
Descrizione
오늘은 어떻게 프로젝트에 기여했나요?
- #62 게시글 리스트에서 검색하는 로직 구현
post /filterRecruitList/:order/:sort: stack으로 게시글 검색- controller 생성 - filterRecruitList
- req.body, req.params로 어떤 데이터를 받을 것인지 고민 및 결정
- req.body:
searchStacksList- 검색할 때 포함할 stack들의 집합(베열) - req.params:
order- 검색 결과 갯수(infinite scroll을 위해 검색결과를 잘라서 보내줌)sort- 검색 순서(최신순, 오래된순) (이후 #23 에도 해당 parameter 추가)
- res.data에
isEnd값 추가 - 게시글 데이터가 더 존재하는지에 대한 여부(true, false)
- #19 middleware-authChecker 위치 변경
- 지금까지 구현한 로직에서 발생한 여러가지 에러 수정
- 필드명 고치기(업데이트된 필드명을 적용시키지 못한 부분 수정) #27
- 로직을 작성하는 과정에서 남아있는 주석, 예전 코드 정리
- #69 #71 #72 project+workspace에서 사용할 테이블들의 entity 생성
- Tasks 테이블: 칸반보드에 들어가는 일정 관리 카드(task)를 관리하는 테이블
- Checklists 테이블: task에 들어가는 체크리스트 데이터를 관리하는 테이블
- Task_comments 테이블: task에서 작성할 수 있는 댓글들을 관리하는 테이블
- #64 project 기능 관련 router, controller 생성
- route: projectRouter
- controllers: showProjectList, createProject, editProject, inviteMembers
- chat 기능 구현을 위한 socket.io 공부 + 어떻게 구현할 것인지 고민 및 회의
오늘의 프로젝트에서 힘든 점은 무엇인가요?
- 검색 기능을 구현할 때 find() 함수에서 where을 사용하여 원하는 stack만 바로 filter될 수 있도록 작성하고 싶었는데 실제로 테스트한 결과, where 부분이 적용되지 않거나 자꾸 에러가 발생했다.
const allBoards = await getRepository(Recruits).find({ relations: ['writer', 'stacks'], where: { stacks: { name: searchStacksList, }, }, order: { createdAt: sort, }, });
방법을 찾기위해 검색하며 여러가지 글을 읽어본 결과, 처음에 entity를 작성할 때 뭔가 어설프게 만들었고 그 부분에서 join + where이 적용되지 않는다는 결론이 나왔다. 이를 올바르게 동작시키려면 entity부터 다시 작성해야할 것 같다는 생각이 들었다.
아직 앞으로 구현해야 할 기능들이 많기 때문에 우선 전체 게시글 데이터를 불러온 다음 하나씩 원하는 stack을 모두 가지고 있는지에 대해 검사하는 방법으로 검색 기능을 작성하였다. 다행히 검색 기능이 원하는대로 작동되긴 하는데 지금 코드보다 더 효율적인 방법이 있을 것 같다는 생각이 들었다. 나중에라도 계획한 기능들을 모두 구현 완료한 후에 시간이 남으면 천천히 여기 부분을 분석+수정&보완하는 방향으로 가고싶다.let filterResult = []; for (let idx = 0; idx < allBoards.length; idx++) { let requireStack = allBoards[idx].stacks.map(el => el.name); let isRight = true; for (let chk = 0; chk < searchStacksList.length; chk++) { if (!requireStack.includes(searchStacksList[chk])) { isRight = false; break; } } if (isRight) { const obj = { ...allBoards[idx], requireStack }; filterResult.push(obj); } }
내일은 프로젝트에 기여하기 위해 무엇을 해야 하나요?
- profile, recruit 기능 테스트 + 에러 수정하기
- API 문서 보완하기! 내일은 꼭 완료하자!
- 오늘 작성한 entity를 토대로 스키마 디자인 보완하기
- socket.io 공부하기
- project 기능 구현하기
- 프로젝트 리스트 조회
- 프로젝트 생성
- 프로젝트 수정
- 프로젝트 팀원 초대(nodemailer)
- workspace 구현 방법 회의하기
- Lingua principale
- TypeScript
- Stelle
- 9
- Fork
- 3
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di codestates/Reciper-server
-
[✍️ Dev Log] 정송이 / 2021-06-16Forse già presa @lovelysi0113 l’ha presa 1944 giorni fa. Aperta@lovelysi0113/기록은 성장의 밑거름 ❄️ Dev Log
codestates/Reciper-server#254 · 1 assegnatario ·
-
[✍️ Dev Log] 정송이 / 2021-06-08Forse già presa @lovelysi0113 l’ha presa 1952 giorni fa. Aperta@lovelysi0113/기록은 성장의 밑거름 ❄️ Dev Log
codestates/Reciper-server#250 · 1 commento · 1 assegnatario ·
-
[✍️ Dev Log] 정송이 / 2021-06-07Forse già presa @lovelysi0113 l’ha presa 1953 giorni fa. Aperta@lovelysi0113/기록은 성장의 밑거름 ❄️ Dev Log
codestates/Reciper-server#245 · 2 commenti · 1 assegnatario ·
-
[✍️ Dev Log] 정송이 / 2021-06-06Forse già presa @lovelysi0113 l’ha presa 1954 giorni fa. Aperta@lovelysi0113/기록은 성장의 밑거름 ❄️ Dev Log
codestates/Reciper-server#234 · 1 assegnatario ·
-
[server] [Workspace] - webRTC initial featureForse di nuovo libera @gatsukichi l’ha presa 1954 giorni fa e non c’è nessuna pull request aperta. Aperta3h Middle server Workspace
codestates/Reciper-server#233 · 1 assegnatario ·
Tutte le issue di codestates/Reciper-server
Issue simili
-
cleanName keeps a state code that's joined to the word before it (SavannahGa → "Savannah Ga")Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
openwatersio/slackwater-database#281 ·
I maintainer di solito rispondono entro 1 giorno
-
accepted bug via-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
pingdotgg/t3code#18690 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Bayern feature:Application ready web
Difficoltà 2/5 1-3 ore Idoneità per principianti 67/100
digitalfabrik/entitlementcard#3176 ·
I maintainer di solito rispondono entro 7 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
NanmiCoder/cc-haha#1533 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
I maintainer di solito rispondono entro 1 giorno