Mongoose에서 Enum을 생성하여 사용하는 방법
I'm noting to create and use the precessionenum
Mongoose 라고 입력합니다.확인해 봤는데 제대로 된 결과가 나오지 않네요.사용하고 있다enum
내 프로그램에 다음과 같이 표시됩니다.
스키마는 다음과 같습니다.
var RequirementSchema = new mongooseSchema({
status: {
type: String,
enum : ['NEW,'STATUS'],
default: 'NEW'
},
})
하지만 나는 여기서 조금 혼란스럽다, 어떻게 그 가치를 넣을 수 있을까?enum
에서처럼Java NEW("new")
. 어떻게 하면enum
데이터베이스에 입력됩니다.express node.js에서 사용하고 있습니다.
여기서 enum은 기본적으로 String 객체입니다.열거 행을 다음으로 변경합니다.enum: ['NEW', 'STATUS']
대신.당신은 거기에 당신의 따옴표와 오타가 있습니다.
Mongoose에는 여러 검증기가 내장되어 있습니다.문자열에는 검증자 중 하나로 열거형이 있습니다.따라서 enum은 검증자를 생성하여 값이 배열에 지정되어 있는지 확인합니다.예:
const userSchema = new mongoose.Schema({
userType: {
type: String,
enum : ['user','admin'],
default: 'user'
},
})
예를 들어 열거가 있다고 합시다.Role
정의하다
export enum Role {
ADMIN = 'ADMIN',
USER = 'USER'
}
다음과 같은 유형으로 사용할 수 있습니다.
{
type: String,
enum: Role,
default: Role.USER,
}
TypeScript를 사용하는 경우enum
인터페이스로 사용할 수 있습니다.IUserSchema
하지만 스키마에서는array
(Object.values(userRole)
).
enum userRole {
admin = 'admin',
user = 'user'
}
interface IUserSchema extends Document {
userType: userRole
}
const UserSchema: Schema = new Schema({
userType: {
type: String,
enum: Object.values(userRole),
default: userRole.user,
required: true
}
});
Enums는 String 객체입니다.다음은 예를 제시하겠습니다.enum :['a','b','c']
아니면 아마 이렇게const listOfEn = ['a','b','c']; => enum: listOfEn
스키마 설계에서는 다음과 같은 enum 키워드를 사용하여 열거 값을 쉽게 추가할 수 있습니다. -
catagory: {
type: String,
enum: ['freeToPlay','earlyAccess','action','adventure','casual','indie','massivelyMultiplayer','racing','simulation','RPG','sports','statigy'],
default: 'freeToPlay'
},
언급URL : https://stackoverflow.com/questions/29299477/how-to-create-and-use-enum-in-mongoose
'programing' 카테고리의 다른 글
MySQL 데이터베이스 연결 IIS10을 설정하는 동안 WordPress 오류 발생 (0) | 2023.03.23 |
---|---|
레일: active_model_serializer와의 깊이 중첩된 연관성을 직렬화하는 중 (0) | 2023.03.23 |
Select2 Ajax 메서드가 선택되지 않음 (0) | 2023.03.23 |
구성 요소 정의에 forwardRef의 표시 이름이 없습니다. (0) | 2023.03.18 |
jquery UI 정렬 가능한 위치를 DB에 저장 (0) | 2023.03.18 |