Express 임경민 미션 7#4
Hidden character warning
Conversation
devbini
left a comment
There was a problem hiding this comment.
🎉 고생하셨습니다!
저번부터 좋은 퀄리티의 코드를 보여주고 계셔서 기대가 되네요.
이번엔 Repository 패턴을 이용한 게 사실 마음에 듭니다. 은근히 이런 기본적인 분리를 전혀 신경쓰지 않는 분들이 많아서 조금 슬퍼하고 있었단 말이죠...
트랜잭션 설정이나 스키마 구조 모델링도 깔끔하네요. 제약조건 설정까지...
이제는 일부 prism 문법이나 origin/host/referer 일부분만 더 익숙해지면
정말 제가 더 터치할 게 없을 정도의 코드가 되지 않을까 기대 해 봅니다.
정말 고생하셨어요! 🎉😊
| async function findCommentsInArticle() { | ||
| return await prisma.$transaction([ | ||
| prisma.comment.count({ where: { parent: String('Article') } }), | ||
| prisma.comment.findMany( |
There was a problem hiding this comment.
🪛 Fix Point
정상적으로 동작을 안 할텐데, 제가 잘못 알고있는 걸 수도 있지만
Prisma ORM 기준 상 제가 썼던 방법과 다른 부분이 있어 코멘트 남겨봐요.
findMany 뿐 만 아니라 다른 메서드들도 매개변수는 하나만 받도록 되어있습니다.
prisma.x.findMany( { } );
이렇게 작성 해 주어야 하는데, 지금은
prisma.x.findMany( { }, { } );
위처럼 매개 값이 두 개가 들어있어서 이게 동작하나? 하고 의문스러워서요.
정석적으로 사용한다고 하면 아래와 같이 수정이 필요합니다.
prisma.comment.findMany({
where: { parent: 'Article' },
orderBy: { createdAt: 'desc' },
})
관련 공식 문서를 첨부 드리니, 한번 확인 해 보면 좋을 것 같아요 :D
https://www.prisma.io/docs/orm/prisma-client/queries/filtering-and-sorting
| return await prisma.$transaction([ | ||
| prisma.comment.count({ where: { articleId: String(articleId) } }), | ||
| prisma.comment.findMany( | ||
| { where: { parent: String('Article') } }, |
There was a problem hiding this comment.
🪛 Fix Point
누락이 된 것 같은데, ArticleId 조건이 빠져있는 것 같아요~!
|
|
||
| export const cors = (req, res, next) => { | ||
| const origin = | ||
| req.headers.origin || req.headers.host || req.headers.referer || ''; |
There was a problem hiding this comment.
☕ Thinking
사실 음... origin만 넣어줘도 충분하지 않을까 싶어요.
referer는 오히려 null이 될 수도 있고, 전체 URI를 가지는거라 화이트리스트의 origin과 동일한 경우도 사실상 없는 수준이라 생각이 되어서... 거기에 host는 origin에 거의 종속되어 있으니, 특별한 이유가 없다면 origin만 써도 괜찮지 않을까 하는 생각입니다.
미션 7 요구사항
기본 요구사항
중고마켓
공통
자유게시판
댓글