#schema

질문 2
해시태그 없이 키워드만 일치하는 질문은 개수에 포함되지 않아요.

2년 전 · Code King Academy 님의 새로운 댓글

json schema validation check 에 대해

궁금한게 있습니다. 클라 에서 사용자가 입력한 데이터를 서버에 보낼 때, 보통 데이터 유효성 검사를 하게 되는데, 유효성 검사를 수행하고 나서, 서버에 보낸 json 을 서버에서도 먼저 json 유효성 검사를 수행하고 나서, 그 이후에 코드를 실행하는게 필수적인가요? 저의 생각인데, 아무리 클라에서 데이터에 대한 유효성 검사를 하고, 데이터를 보낸다고 해도, 테스트 코드를 정말 잘 작성한다고 해도, 실수할 수 도 있다고 생각되고 유효하지 않은 데이터를 서버에서 validation check 를 하지 않았을때 초래하는 문제가 많을 거 같아서, 필수 라고 생각되는데, 현업 개발자 분들의 의견이 궁금합니다~

개발자

#json

#api

#validation

#ajv

#유효성검사

답변 1

댓글 1

추천해요 1

조회 69

2년 전 · nowv 님의 새로운 댓글

mysql 인스턴스에서 여러 스키마를 생성하는 것이 불필요한 건가요?

과거 mysql을 사용할 때 하나의 스키마 아래에 여러 테이블을 만들어 작업한 적이 있습니다. 스키마 아래로 너무 많은 테이블들이 생성되어 테이블간 연관성이나 관계를 확인하기가 쉽지 않았습니다. 이번 프로젝트에서는 과거처럼 하나의 스키마(my_db)가 아니라 연관성이 높은 테이블들을 스키마별로 모아서 연결하고 싶었습니다. 예를 들자면, user관련 테이블들은 Users스키마에, product과 연관된 테이블들은 Products스키마에, 중간테이블이 필요하면 Users_Products스키마에 테이블을 저장했습니다. 이 구조라면 하나의 mysql 인스턴스에 3개의 스키마가 생성된 것입니다. 문제는 nestjs에서 typeorm 설정을 하는 과정에서 database를 입력하는 부분에서 발생했습니다. TypeOrmModule.forRoot에서 database이름을 하나밖에 입력할 수 없었습니다.(mysql은 database와 schema를 동의어로 취급한다고 들었습니다.) 3개의 스키마를 연결하는 방법은 다음과 같다는 것을 발견했습니다. 이런 방법을 쓰는 이유를 작성자는 서비스용 database, 정보분석용 database를 나눠서 사용하기 위함이라고 말합니다. https://www.inflearn.com/questions/662388/typeorm-%EB%8B%A4%EC%A4%91-%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-%EC%97%B0%EA%B2%B0 mysql로 하나의 서비스를 위해 스키마를 여러개로 나누어서 하나의 앱에 적용하는 것이 불필요한 방법일까요?

개발자

#mysql

#nestjs

#typeorm

#schema

답변 1

댓글 1

조회 307

2년 전 · 익명 님의 질문

네이버 검색 섬네일, 서브 페이지 나오게 하는 방법이 있을까요?

홈페이지를 네이버에서 검색을 하면 서브 페이지와 섬네일이 나오는 홈페이지들이 있는데 방법이 뭘까요? 서브 페이지 노출은 <meta name="robots" content="index,follow"> nav > ul > li 로 서브 페이지도 등록을 한 상태입니다. 썸네일 등록은 <script type="application/ld+json" class="yoast-schema-graph"> 작업했습니다. 하지만 홈페이지 검색하면 나오지 않아 문의 드립니다. 참고했던 내용은 https://searchadvisor.naver.com/guide 네이버 웹 마스터 가이드를 보고 적용했습니다.

개발자

#네이버

#검색

#섬네일

#서브페이지

답변 0

댓글 0

조회 70

2년 전 · 달레 님의 답변 업데이트

영화 예매 프로젝트의 예매 기능과 관련하여

안녕하세요. 토이 프로젝트로 영화 예매 서비스를 만들어보고 있습니다. 어느 정도 기능 구현이 완료되었다고 생각했었는데, 오늘 생각지도 못한 고려 사항을 발견해버렸네요 ㅠㅠ.. 좌석 모델과 예매 모델 사이의 관계의 모호함이 있었습니다.. 저는 MovieSchedule 모델을 두어 참조하는 영화의 id, 상영 시작 시간, 상영 종료 시간, 참조하는 screen(상영관)의 id를 column으로 두었습니다. 그리고 Reservation 모델이 이 MovieSchedule 모델을 참조하도록 하고, 예매 인원, 예매하는 유저의 아이디 등의 column을 갖도록 하였습니다. 아래 코드를 참조부탁드립니다(Prisma ORM을 사용하였습니다). 하지만 이렇게 구성을 하다보니, 같은 영화, 같은 상영관이지만 시간대만 다른 좌석(같은 screen, 다른 MovieSchedule을 참조)의 경우에, seat와 reservation이 one-to-many로 설정되어 있기 때문에 이미 다른 시간대(다른 MovieSchedule)에서 해당 좌석을 예매 해두었다면, 좌석은 더 이상 예매를 할 수 없는 상태가 되더군요.. schema를 변경할 필요가 있을 것 같은데 ERD를 설계해본 경험이 별로 없다보니 어떤식으로 변경해야 할지 감이 잘 안 잡힙니다.. 제가 생각해본 대안들은 다음과 같습니다. 1. movieSchedule에 대응하는 screen과 seat를 생성하고, 상영 후 해당 screen 및 seat를 모두 삭제. 이러면 여러 시간대에 같은 screenNum이 여러개 생길 수 있으니 screenNum의 unique 조건을 삭제해야할듯. 2. seat와 reservation의 관계를 many to many로 변경하고 reservation-seat과 같은 table을 하나 더 생성. 해당 테이블은 seatId와 reservationId를 갖고 있을 것이므로, 좌석 조회 시 reservation의 movieSchedule과 조회하는 movieSchedule이 일치하면 예약되었음을 확인할 수 있음. 위 대안들이 적절한지, 그렇지 않다면 어떤 대안이 있을지 조언 부탁드립니다 ㅠㅠ

개발자

#erd

#sql

#javascript

#prisma

답변 2

댓글 4

조회 392

2년 전 · 삭제된 사용자 님의 새로운 답변

개발용 DB와 운영용 DB를 나누는 방법이 궁금해요

안녕하세요! 지금 장소추천 서비스를 만들고 있어요. planetScale과 prisma를 이용하고 있어요. 새로 업데이트를 해서 data schema가 변경될 것 같아요. 근데 운영 서버와 개발 서버 모두 하나의 DB에 연결되어 있어서, 개발 시 서비스 운영에 영향을 끼칠거 같은데 어떻게 해결하면 좋을까요? 대학생이고, 처음 만들다보니까 어려움이 많습니다. 많은 도움 부탁드립니다

개발자

#db

#planetscale

답변 4

댓글 2

조회 1,054

3년 전 · 두루두 님의 새로운 답변

Swagger 사용 관련하여 질문이 있습니다 고수님들

현재 swagger3 사용 중이며 controller에서 @requestbody String xxx 식으로 데이터를 하나만 받으려고 하는데 꼭 dto를 만들어서 @Schema(descriptipn ="블라블라")를 작성해야하나요? dto를 안만들고 description을 넣는 방법은 없을까요? 저렇게 필요한 파라미터가 하나밖에 없을 시에도 꼭 Dto를 만들어서 작성해야하는지 다른 방법은 없는지 궁금합니다.!!

개발자

#백엔드

#swagger

#springboot

답변 1

댓글 0

추천해요 2

조회 224