Model&Schema
Schema는 데이터의 구조나 타입, 길이 등의 정보를 담고 있는 것이다.
Model은 Schema를 감싸고 있는 것이라 생각하면 된다.
models라는 폴더를 생성해 model을 관리해보자.
그 후, models폴더 안에 User.js파일을 만들어 보자.
const mongoose = require('mongoose')
const userSchema = mongoose.Schema({
name: {
type: String,
maxlength: 50
},
email:{
type: String,
trim: true,
unique: 1
},
password:{
type: String,
minlength: 5
},
lastname:{
type: String,
maxlength: 50
},
role:{
type: Number,
default: 0
},
image: String,
token: {
type: String
},
tokenExp: {
type: Number
}
})
const User = mongoose.model('User', userSchema)
module.exports = { User }
타입과 부가 정보들을 설정할 수 있다.
스키마를 짜놓고 model()로 감싸주어 모델을 만든다.
첫 번째 매개변수는 사용할 모델 이름이고 두 번째 매개변수는 스키마이다.
그리고 외부에서도 이 모델을 사용하기 위해 module.exports를 해준다.