User Schema 작성

이은지·2022년 1월 7일
0

👀 모델과 스키마

Model: Schema를 감싸는 역할

Schema: 정보가 갖춰야 하는 구성요소와 형식을 정의한 것
(Schema의 본래 정의와는 거리가 먼 것 같지만 일단은 이렇게 이해)

😯 예시 - 사용자 Schema

예시: User Schema

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

models/User.js 에 다음과 같은 코드를 작성한다.

// User Schema
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); // 모델로 Schema 감싸기

module.exports = { User }; // 모델을 다른 곳에서도 사용할 수 있게 export

0개의 댓글