모듈 규칙
model.document.ts
Filter 정의 - from()
| method | 설명 | 예제 |
|---|---|---|
| .arg(name, Type, options?) | 필수 파라미터. 관리자 패널의 UI 렌더링을 위한 { ref, renderOption } 옵션 포함. | |
| .opt(name, Type, options?) | 선택적 파라미터. 제공되지 않으면 undefined. 쿼리에서 조건부 스프레드 사용. | |
| .query((...args) => MongoQuery) | MongoDB 쿼리 객체를 반환합니다. 인수는 .arg()와 .opt() 호출 순서와 일치합니다. | |
필수 파라미터. 관리자 패널의 UI 렌더링을 위한 { ref, renderOption } 옵션 포함.
선택적 파라미터. 제공되지 않으면 undefined. 쿼리에서 조건부 스프레드 사용.
MongoDB 쿼리 객체를 반환합니다. 인수는 .arg()와 .opt() 호출 순서와 일치합니다.
Document 클래스 - by()
| method | 설명 | 예제 |
|---|---|---|
| this.set(data) | 여러 필드를 한 번에 설정. Object.assign(this, data)와 동일 | |
| await this.save() | 변경사항을 MongoDB에 저장. 저장된 문서를 반환. | |
| await this.refresh() | 데이터베이스에서 문서를 다시 로드하고 로컬 변경사항을 삭제. | |
여러 필드를 한 번에 설정. Object.assign(this, data)와 동일
변경사항을 MongoDB에 저장. 저장된 문서를 반환.
데이터베이스에서 문서를 다시 로드하고 로컬 변경사항을 삭제.
Model 클래스 - into()
자동 생성 CRUD 메서드
| method | 설명 | 예제 |
|---|---|---|
| getProduct(id: string) | ID로 문서를 불러옵니다. 없으면 에러를 반환합니다. | |
| loadProduct(id?: string) | ID로 문서를 불러옵니다. 없으면 null을 반환합니다. | |
| loadProductMany(ids: string[]) | ID 배열로 문서를 일괄 로드합니다. 문서 또는 null 배열을 반환합니다. | |
| createProduct(data: db.ProductInput) | 입력 데이터로 새 문서를 생성합니다. | |
| updateProduct(id: string, data: Partial<db.Product>) | ID로 문서를 업데이트합니다. 업데이트된 문서를 반환합니다. | |
| removeProduct(id: string) | ID로 문서를 소프트 삭제합니다. 상태를 'archived'로 설정합니다. | |
| searchProduct(searchText: string, queryOption?: ListQueryOption) | 텍스트로 문서를 검색합니다. 문서 목록과 개수를 반환합니다. | |
| searchDocsProduct(searchText: string, queryOption?: ListQueryOption) | 텍스트로 문서를 검색합니다. 문서 목록만 반환합니다. | |
| searchCountProduct(searchText: string) | 검색 텍스트와 일치하는 문서 수를 셉니다. | |
ID로 문서를 불러옵니다. 없으면 에러를 반환합니다.
ID로 문서를 불러옵니다. 없으면 null을 반환합니다.
ID 배열로 문서를 일괄 로드합니다. 문서 또는 null 배열을 반환합니다.
입력 데이터로 새 문서를 생성합니다.
ID로 문서를 업데이트합니다. 업데이트된 문서를 반환합니다.
ID로 문서를 소프트 삭제합니다. 상태를 'archived'로 설정합니다.
텍스트로 문서를 검색합니다. 문서 목록과 개수를 반환합니다.
텍스트로 문서를 검색합니다. 문서 목록만 반환합니다.
검색 텍스트와 일치하는 문서 수를 셉니다.
자동 생성 쿼리 메서드
| method | 설명 | 예제 |
|---|---|---|
| list<Query>(...args, option?) | 정의된 쿼리와 일치하는 문서를 나열합니다. | |
| listIds<Query>(...args, option?) | 정의된 쿼리와 일치하는 문서 ID를 나열합니다. | |
| find<Query>(...args, option?) | 정의된 쿼리와 일치하는 단일 문서를 찾습니다. | |
| findId<Query>(...args, option?) | 정의된 쿼리와 일치하는 단일 문서 ID를 찾습니다. | |
| pick<Query>(...args, option?) | 정의된 쿼리와 일치하는 단일 문서를 찾습니다. 없으면 에러를 던집니다. | |
| pickId<Query>(...args, option?) | 정의된 쿼리와 일치하는 단일 문서 ID를 찾습니다. 없으면 에러를 던집니다. | |
| exists<Query>(...args) | 정의된 쿼리와 일치하는 문서가 존재하는지 확인합니다. ID 또는 null을 반환합니다. | |
| count<Query>(...args) | 정의된 쿼리와 일치하는 만서 수를 셉니다. | |
| insight<Query>(...args) | 정의된 쿼리와 일치하는 집계 통계를 가져옵니다. | |
| query<Query>(...args) | Filter에 정의된 원시 쿼리 객체를 가져옵니다. | |
정의된 쿼리와 일치하는 문서를 나열합니다.
정의된 쿼리와 일치하는 문서 ID를 나열합니다.
정의된 쿼리와 일치하는 단일 문서를 찾습니다.
정의된 쿼리와 일치하는 단일 문서 ID를 찾습니다.
정의된 쿼리와 일치하는 단일 문서를 찾습니다. 없으면 에러를 던집니다.
정의된 쿼리와 일치하는 단일 문서 ID를 찾습니다. 없으면 에러를 던집니다.
정의된 쿼리와 일치하는 문서가 존재하는지 확인합니다. ID 또는 null을 반환합니다.
정의된 쿼리와 일치하는 만서 수를 셉니다.
정의된 쿼리와 일치하는 집계 통계를 가져옵니다.
Filter에 정의된 원시 쿼리 객체를 가져옵니다.
커스텀 로더
| method | 설명 | 예제 |
|---|---|---|
| byField(field) | 고유 필드로 단일 문서 | |
| byArrayField(field) | 필드 값으로 여러 문서 | |
| byQuery([fields]) | 여러 필드 조건으로 문서 | |
고유 필드로 단일 문서
필드 값으로 여러 문서
여러 필드 조건으로 문서
Middleware 클래스
Service의 Document
