몽구스 사용자 지정 유효성 검사기 사용 방법

소개

스키마 유효성 검사가 항상 권장됩니다. 유효성 검사는 데이터베이스를 더 잘 구조화하고 잘못된 데이터를 데이터베이스에 삽입하지 않도록 합니다. 몽구스는 필수,최소 길이,최대 길이,최소 및 최대와 같은 몇 가지 기본 제공 유효성 검사기를 제공합니다. 이러한 기본 제공 유효성 검사기는 매우 유용하고 간단하게 구성 할 수 있습니다. 그러나 몽구스의 유효성 검사는 내장 유효성 검사기에만 국한되지 않습니다. 우리는 또한 사용자 정의 검증을 만들 수 있습니다. 이 기사에서는 몽구스 사용자 정의 유효성 검사기를 만드는 방법에 대해 설명합니다.

검증없이 스키마 정의

세부 정보 컬렉션이 있으며 이에 대해 정의 된 스키마입니다.

1
2
3
4
5
6
7
8
9
10
11
세부 정보=새 스키마({
이름:{
유형:문자열
},
연령:{
유형:번호
},
위치:{
유형:
}
});

세 번째 필드,즉 위치를 관찰하십시오. 그 유형은 문자열 배열입니다. 현재로서는 검증이 없습니다. 즉,이 컬렉션에 문서를 삽입하는 동안 이러한 필드를 건너 뛰거나 모든 필드를 건너 뛸 수 있습니다. 몽고 쉘을 사용하여 빈 문서를 삽입 해 봅시다.

1
2
3
> 데시벨세부 사항.다음 예제에서는 다음과 같이 설명합니다.” : 1 })
>

여기에서 우리는 빈 개체를 통과하고이 컬렉션에 삽입됩니다. 그러나 이것이 맞습니까? 이 문서의 요점은 무엇입니까? 이런 이유로 우리는 그런 상황을 조우하는 검증이 있다. 기본 제공 유효성 검사기를 사용할 수 있지만 위치 필드에 사용자 지정 유효성 검사기를 추가합니다.

사용자 지정 유효성 검사기

위치 유형 필드는 문자열 배열입니다. 현재 삽입할 배열에는 원하는 수의 항목이 포함될 수 있습니다. 여기서 검증을 만들어 보겠습니다. 지금 위치 필드를 관찰하십시오.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
세부 정보=새 스키마({
이름:{
유형:문자열
},
나이: {
유형:번호
},
위치:{
유형:,
유효성 검사:{
유효성 검사기:함수(도착){
반환 도착.길이> 2;
},
메시지:”2 개 이상의 위치를 제공해야합니다.”
}
}
});

우리는 새로운 필드를 추가,검증.

1
2
3
4
5
6
유효성 검사:{
유효성 검사기:함수(도착){
반환 도착.길이> 2
},
메시지:’당신은 2 개 이상의 위치를 제공해야합니다.’
}

유효성 검사 키워드를 사용하여 사용자 지정 유효성 검사를 만들어야 합니다. 그 값으로,우리는 유효성 검사를 포함하는 개체를 가질 것이다.

1
2
3
이 문제를 해결하는 방법은 다음과 같습니다.길이> 2
},

배열의 길이가 2 보다 큰지 아닌지 확인하는 함수를 유효성 검사로 정의했습니다. 유효성 검사를 위반하면 다음 필드에 지정한 메시지가 포함된 오류가 발생합니다.

1
메시지:’당신은 2 개 이상의 위치를 제공해야합니다.’

그럼 우편 배달부 도구를 사용하여 이것을 확인합시다.

갸조

이미지”2 개 이상의 위치를 제공해야 합니다.”우리는 두 개의 값을 삽입하려고했기 때문에.

결론

검증은 몽구스 스키마의 중요한 부분입니다. 내장 유효성 검사기와 함께 몽구스는 사용자 정의 유효성 검사를 만드는 옵션도 제공합니다. 사용자 지정 유효성 검사를 만드는 것도 매우 간단합니다. 기본 제공 유효성 검사기가 요구 사항을 충족하지 않는 경우 사용자 지정 유효성 검사를 사용할 수 있습니다.

답글 남기기

이메일 주소는 공개되지 않습니다.