[ Node.js ] 3강. MongoDB model & schema

이번 게시글에서는 UserModel을 생성할 것 입니다.

회원가입할때 유저 이름, 나이 등 정보를 입력할 때 이 정보들은 유저 데이터 베이스에 들어갑니다.

이걸 보관하기 위해 모델과 스키마를 만들 것입니다.

 

model : 스키마를 감싸주는 역할

schema : 상품 관련된 글을 작성 시 그 글을 작성한 사람이 누구인지, 이름이 뭔지, 타입이 뭔지 등의 부분들을 말합니다.

 

1. 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: {//관리자 1 , 유저 0
        type: Number,
        default: 0
    },
    image: String, //이렇게도 타입 지정 가능
    token:{ //유효성
        type: String

    },
    tokenExp: {//토큰 사용기간
        type: Number
    }

})

const User = mongoose.model('User',userSchema)//스키마를 모델로 감싸줌 , 모델의 이름 : User

module.exports = { User } //이 모델을 다른곳에서도 쓸 수 있게 export