React

[노드] mongo DB Model & Schema (user 모델 만들기)

뉴라코 2024. 11. 23. 22:46
유저 데이터를 저장하고 사용하기 위한 user model, user schema 만들어야 함.

이 때, schema를 model이 감싼다 ★

 

 

user schema 예시

1) writer : 작성한 사람

2) title: 예를 들면, ' 이 제품 좋아요' 이런 문자열. 길이는 50까지 온다.

 


예시)

const mongoose = require('mongoose');

const userSchema = mongoose.Schema({
    name:{
        type: String,
        maxlength:50
    },
    email:{
        type:String,
        trim:true, 
        // space 없애주는 역할
        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)
// 다른 파일에서도 쓰고 싶으니까
module.exports={user}

- Trim은 이메일 쓸 때 띄어쓰기 없애주는 역할

-Token은 유효성을 관리할 수 있음 , 그래서 tokenExp도 같이 옴.

- const userSchema =mongoose.Schema({})로 열고 마지막은 

const user = mongoose.model('user,userSchema)로 닫아줌.

=> schema를 model이 감싼다는 것!