[Node.js Basic] 회원가입, 로그인, 로그아웃 구현 -3

Kwangseok Kim·2022년 1월 3일
0

NodeJS Basic

목록 보기
3/3
post-thumbnail

MongoDB Model and Schema

Model은 Schema를 감싸주는 역할을 하고
Scheme는 타입과 형태를 만들어 주는 역할을 한다.

예를 들면 회원가입을 할 때 필요한 정보들의 형태들,
email의 타입은 문자열, 최대길이는 15자
password의 타입은 문자열, 최소길이는 5자,
username의 타입은 문자열, 최대길이는 15자 같은.

Scheme의 코드를 한 번 보자.

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 };

Models폴더를 만들고 폴더 내에 User.js파일을 생성해서 위의 코드를 작성했다.
코드를 보면 크게 어렵지는 않은 내용이다.

mongoose 모듈을 불러오고 schema를 만들어서
필요한 항목들의 타입을 작성한다.
그리고 User를 사용할 수 있도록 export 해준다.

profile
누구나 처음은 있잖아요.

0개의 댓글