8-1. Post 스키마 만들기
Post 모델을 위한 스키마를 만들어봅시다. Post 모델 안에 있는 덧글들은 서브 다큐먼트 형식으로 있으니, 이때 필요한 Comment 스키마를 먼저 만들겠습니다.
src/models/post.js
const mongoose = require('mongoose');
const { Schema } = mongoose;
const Comment = new Schema({
createdAt: { type: Date, default: Date.now },
username: String,
text: String
});
createdAt 은 현재 날짜가 기본적으로 들어가게됩니다.
그 다음엔, Post 를 위한 스키마를 만들어봅시다.
src/models/post.js
const Post = new Schema({
createdAt: { type: Date, default: Date.now },
count: Number,
username: String,
content: String,
likesCount: { type: Number, default: 0 },
likes: { type: [String], default: [] },
comments: {
type: [Comment],
default: []
}
});
module.exports = mongoose.model('Post', Post);
좋아요, 그리고 덧글에 대한 정보들이 하나의 Post 스키마 안 에 다 내장되어있습니다.