diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 00000000..e69de29b diff --git a/404.html b/404.html new file mode 100644 index 00000000..f40fa454 --- /dev/null +++ b/404.html @@ -0,0 +1,326 @@ + + + +
+ + + + + + + + + + + + + +ex)
+FIX: 모델 validation 오류 수정
+
+- Book title 제목 default 값 추가
+- User intra 최소 길이 0으로 변경
+
+ex)
+FEAT: 로그인 기능 추가
+
+- auth/ api 추가
+
+ex)
+TEST: bookController 테스트 코드 추가
+
+- 책 제목에 대한 유효성 테스트 추가
+
+변수명, 함수명, 칼럼명, 파일명은 camelCase를 사용한다.
+클래스명, 타입명은 PascalCase를 사용한다.
+테이블명은 snake_case를 사용한다.
().service.ts 파일을 import할 때는 카멜케이스로 ()Service라고 import한다.
+e.g.) users.service.ts를 import할 경우 import * as usersService from ../users/users.service.ts
같이 적는다.
Error Code | +Constant Name | +Description | +
---|---|---|
0 | +UNKNOWN_ERROR | +unknown error | +
1 | +QUERY_EXECUTION_FAILED | +executeQuery SQL 에러 | +
2 | +INVALID_INPUT | +유효하지 않은 인자 (req , param, body에 잘못된 인자가 들어왔을 때) | +
42 | +CLIENT_AUTH_FAILED | +Client authentication failed due to unknown client, no client authentication included, or unsupported authentication method. | +
Error Code | +Constant Name | +Description | +
---|---|---|
100 | +NO_AUTHORIZATION | +권한이 없을때 | +
101 | +NO_USER | +해당 토큰의 유저가 DB에 없을때 | +
102 | +NO_TOKEN | +토큰이 발급되지 않았을때 | +
103 | +NO_INPUT | +로그인시 ID, PW 파라미터가 없을때 | +
104 | +WRONG_PASSWORD | +비밀번호가 일치하지 않을때(로그인 실패) | +
105 | +ALREADY_AUTHENTICATED | +이미 인증된 회원의 경우(또 인증할 경우) | +
107 | +NO_ID | +해당 ID가 존재하지 않을때(로그인 실패) | +
108 | +EXPIRATION_TOKEN | +토큰이 만료되었을 경우 | +
109 | +TOKEN_NOT_VALID | +토큰이 유효하지 않을때 | +
110 | +NON_AFFECTED | +UPDATE 실패 | +
111 | +ANOTHER_ACCOUNT_AUTHENTICATED | +다른 계정에 이미 42 intra가 연동되어 있는 경우 (105번은 이미 인증된 회원인 경우이고 111번은 42 계정을 다른 계정에 또 연결하는 경우) |
+
112 | +ACCESS_DENIED | +42 API 사용에 대해 동의를 하지 않았을 경우 | +
Error Code | +Constant Name | +Description | +
---|---|---|
203 | +EMAIL_OVERLAP | +email 중복. (이미 있는 email 로 가입) | +
204 | +NICKNAME_OVERLAP | +nickname 중복. (이미 있는 nickname 입력) | +
205 | +INVALIDATE_PASSWORD | +잘못된 password 형식 | +
206 | +INVALID_ROLE | +유효하지 않은 role 값입니다. | +
207 | +SLACK_OVERLAP | +슬랙 ID가 중복 | +
208 | +INTRA_AUTHENTICATE_SUCCESS | +42 인증 완료 ( 에러 메세지는 아닌데, 인증 완료시 Front한테 상태값을 전달해서 메세지를 띄우기 위한 코드 입니다 ) | +
Error Code | +Constant Name | +Description | +
---|---|---|
301 | +SLACKID_OVERLAP | +슬랙 ID가 중복됨 | +
302 | +NO_ISBN | +네이버 Open API에서 ISBN검색 결과가 없음 | +
303 | +ISBN_SEARCH_FAILED | +국립중앙 도서관 API에서 ISBN 검색이 실패 | +
304 | +NO_BOOK_INFO_ID | +book_info table에 존재하지 않는 ID를 조회하려고 함 | +
305 | +CALL_SIGN_OVERLAP | +등록하려는 callSign는 이미 있는 callSign임 | +
306 | +INVALID_CALL_SIGN | +유효하지 않는 callsign | +
307 | +NO_BOOK_ID | +없는 BOOK_ID를 조회하려고 함 | +
308 | +FAIL_CREATE_BOOK_BY_UNEXPECTED | +예상치 못한 에러로 책 정보 insert에 실패함 | +
309 | +INVALID_CATEGORY_ID | +보내준 카테고리 ID에 해당하는 callsign을 찾을 수 없음 | +
310 | +ISBN_SEARCH_FAILED_IN_NAVER | +네이버 Open API에서 ISBN검색 자체가 실패함 | +
311 | +INVALID_PUBDATE_FORNAT | +입력한 pubdate가 알맞은 형식이 아님. 기대하는 형식 "20220807" | +
312 | +FAIL_PATCH_BOOK_BY_UNEXPECTED | +예상치 못한 에러로 bookInfo patch 가 실패함 | +
313 | +NO_BOOK_INFO_DATA | +입력한 data가 없음(적어도 하나의 데이터는 필수) | +
Error Code | +Constant Name | +Description | +
---|---|---|
401 | +NO_USER_ID | +유저 없음 | +
402 | +NO_PERMISSION | +권환 없음 | +
403 | +LENDING_OVERLOAD | +2권 이상 대출 | +
404 | +LENDING_OVERDUE | +연체 중 | +
405 | +ON_LENDING | +대출 중 | +
406 | +ON_RESERVATION | +예약된 책 | +
407 | +LOST_BOOK | +분실된 책 | +
408 | +DAMAGED_BOOK | +파손된 책 | +
410 | +NONEXISTENT_LENDING | +존재하지 않는 대출 | +
411 | +ALREADY_RETURNED | +이미 반납 처리된 대출 | +
Error Code | +Constant Name | +Description | +
---|---|---|
501 | +INVALID_INFO_ID | +book_info_id가 유효하지 않음 | +
502 | +AT_PENALTY | +대출 제한 중 | +
503 | +NOT_LENDED | +대출 가능 | +
504 | +ALREADY_RESERVED | +이미 예약 중 | +
505 | +ALREADY_LENDED | +이미 대출 중 | +
506 | +MORE_THAN_TWO_RESERVATIONS | +두 개 이상 예약 중 | +
507 | +NO_MATCHING_USER | +해당 유저 아님 | +
508 | +RESERVATION_NOT_EXIST | +예약 ID 존재하지 않음 | +
509 | +NOT_RESERVED | +예약 상태가 아님 | +
Error Code | +Constant Name | +Description | +
---|---|---|
601 | +INVALID_INFO_ID_LIKES | +bookInfoId가 유효하지 않음 | +
602 | +ALREADY_LIKES | +좋아요 데이터가 이미 존재함 | +
603 | +NONEXISTENT_LIKES | +bookInfoId가 유효하지 않음 | +
Error Code | +Constant Name | +Description | +
---|---|---|
700 | +UNAUTHORIZED | +사서권한이 없는 사람이 모든 대출/반납 기록을 조회하려고함 | +
Error Code | +Constant Name | +Description | +
---|---|---|
800 | +INVALID_INPUT_REVIEWS | +유효하지 않은 양식의 reviews | +
801 | +UNAUTHORIZED_REVIEWS | +reviews를 수정/삭제할 권한이 없음 | +
804 | +NOT_FOUND_REVIEWS | +존재하지 않는 reviewsId | +
805 | +DISABLED_REVIEWS | +Disabled 된 review | +
810 | +INVALID_INPUT_REVIEWS_ID | +유효하지 않은 양식의 reviewsId | +
811 | +INVALID_INPUT_REVIEWS_CONTENT | +유효하지 않은 양식의 reviews content | +
Error Code | +Constant Name | +Description | +
---|---|---|
900 | +INVALID_INPUT_TAGS | +유효하지 않은 양식의 tags | +
901 | +UNAUTHORIZED_TAGS | +tags를 수정/삭제할 권한이 없음 | +
902 | +ALREADY_EXISTING_TAGS | +이미 존재하는 내용의 태그 | +
904 | +NOT_FOUND_TAGS | +존재하지 않는 tagId | +
910 | +INVALID_INPUT_TAG_ID | +유효하지 않은 양식의 tagId | +
main
브랜치develop
브랜치42-issue-추가
)둘 이상의 인원이 하나의 issue 브랜치에서 작업할 경우에 issue/23_jolim
같은 방식으로 이름지어서 푸시합니다.
- [ ] #'이슈번호'
를 입력하면 링크할 수 있습니다.ex)\nFIX: \ubaa8\ub378 validation \uc624\ub958 \uc218\uc815\n\n- Book title \uc81c\ubaa9 default \uac12 \ucd94\uac00\n- User intra \ucd5c\uc18c \uae38\uc774 0\uc73c\ub85c \ubcc0\uacbd\n\nex)\nFEAT: \ub85c\uadf8\uc778 \uae30\ub2a5 \ucd94\uac00\n\n- auth/ api \ucd94\uac00\n\nex)\nTEST: bookController \ud14c\uc2a4\ud2b8 \ucf54\ub4dc \ucd94\uac00 \n\n- \ucc45 \uc81c\ubaa9\uc5d0 \ub300\ud55c \uc720\ud6a8\uc131 \ud14c\uc2a4\ud2b8 \ucd94\uac00\n
"},{"location":"convention/#_1","title":"\ub124\uc774\ubc0d","text":"\ubcc0\uc218\uba85, \ud568\uc218\uba85, \uce7c\ub7fc\uba85, \ud30c\uc77c\uba85\uc740 camelCase\ub97c \uc0ac\uc6a9\ud55c\ub2e4. \ud074\ub798\uc2a4\uba85, \ud0c0\uc785\uba85\uc740 PascalCase\ub97c \uc0ac\uc6a9\ud55c\ub2e4. \ud14c\uc774\ube14\uba85\uc740 snake_case\ub97c \uc0ac\uc6a9\ud55c\ub2e4.
"},{"location":"convention/#ts-import","title":"ts\ud30c\uc77c\uc758 import","text":"().service.ts \ud30c\uc77c\uc744 import\ud560 \ub54c\ub294 \uce74\uba5c\ucf00\uc774\uc2a4\ub85c ()Service\ub77c\uace0 import\ud55c\ub2e4. e.g.) users.service.ts\ub97c import\ud560 \uacbd\uc6b0 import * as usersService from ../users/users.service.ts
\uac19\uc774 \uc801\ub294\ub2e4.
main
\ube0c\ub79c\uce58","text":"develop
\ube0c\ub79c\uce58","text":"42-issue-\ucd94\uac00
)","text":"\ub458 \uc774\uc0c1\uc758 \uc778\uc6d0\uc774 \ud558\ub098\uc758 issue \ube0c\ub79c\uce58\uc5d0\uc11c \uc791\uc5c5\ud560 \uacbd\uc6b0\uc5d0 issue/23_jolim
\uac19\uc740 \ubc29\uc2dd\uc73c\ub85c \uc774\ub984\uc9c0\uc5b4\uc11c \ud478\uc2dc\ud569\ub2c8\ub2e4.
- [ ] #'\uc774\uc288\ubc88\ud638'
\ub97c \uc785\ub825\ud558\uba74 \ub9c1\ud06c\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\ucc38\uace0: 415 \uc774\uc288
"},{"location":"usage/","title":"How to use Mkdocs","text":""},{"location":"usage/#_1","title":"\ub85c\uceec\uc5d0\uc11c \uc815\uc801 \ud398\uc774\uc9c0 \ube4c\ub4dc","text":"mkdocs new [\ud504\ub85c\uc81d\ud2b8 \uc774\ub984]
mkdocs build
mkdocs run
... \ub85c\uceec\uc5d0\uc11c \uc815\uc801 \ud398\uc774\uc9c0 \ube4c\ub4dc\ud558\ub294 \uac83\uae4c\uc9c0\ub294 \ub611\uac19\uc740\ub370 1. mkdocs gh-pages
\uba85\ub839\uc744 \ub0b4\ub9ac\uba74 \uc18c\uc18d\ub41c \ub808\ud3ec\uc9c0\ud1a0\ub9ac\uc758 gh-pages \ub514\ub809\ud1a0\ub9ac\uc5d0 \uc815\uc801 \uc0ac\uc774\ud2b8\ub97c \ubc30\ud3ec\ud574\ubc84\ub9bc 2. github -> setting -> github pages \uc5d0 branch \ub97c gh-pages
\uc55e\uc5d0\uc11c \uc54c\uc544\ubcf8 \ubc30\ud3ec\ubc95\uc740 \uc9c1\uc811 \ube4c\ub4dc\ud558\uace0 \ubc30\ud3ec\uae4c\uc9c0 \ud574\uc57c \ud55c\ub2e4. \ub9e4\uc6b0 \uadc0\ucc2e\uc74c. github action \uc744 \ud1b5\ud574 \ud2b9\uc815 \ud2b8\ub9ac\uac70\uac00 \ubc1c\uc0dd\ud558\uba74 \uc790\ub3d9\uc73c\ub85c \ube4c\ub4dc - \ubc30\ud3ec\ub97c \ud558\ub3c4\ub85d \ub9cc\ub4e4 \uc218 \uc788\uc74c. \uc774\ub97c \uc704\ud574\uc11c\ub294 .github/workflows/ \ub514\ub809\ud1a0\ub9ac\uc5d0 .yml \ud30c\uc77c \uc791\uc131 ( github action \uc744 \uc791\ub3d9\uc2dc\ud0ac \ud30c\uc77c ) \ud574\uc57c\ud55c\ub2e4. yml \uc758 \uc608\uc2dc\ub294.. \ub514\ub809\ud1a0\ub9ac \ucc38\uc870.
"}]} \ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml new file mode 100644 index 00000000..0f8724ef --- /dev/null +++ b/sitemap.xml @@ -0,0 +1,3 @@ + +mkdocs new [프로젝트 이름]
mkdocs build
mkdocs run
... 로컬에서 정적 페이지 빌드하는 것까지는 똑같은데
+1. mkdocs gh-pages
명령을 내리면 소속된 레포지토리의 gh-pages 디렉토리에 정적 사이트를 배포해버림
+2. github -> setting -> github pages 에 branch 를 gh-pages
앞에서 알아본 배포법은 직접 빌드하고 배포까지 해야 한다. 매우 귀찮음. +github action 을 통해 특정 트리거가 발생하면 자동으로 빌드 - 배포를 하도록 만들 수 있음. +이를 위해서는 .github/workflows/ 디렉토리에 .yml 파일 작성 ( github action 을 작동시킬 파일 ) 해야한다. +yml 의 예시는.. 디렉토리 참조.
+ + + + + + +