model 연결하기

hrj2233·2021년 11월 21일

db

목록 보기
3/3

Video.js

const videoSchema = new mongoose.Schema({
  title: { type: String, required: true, trim: true, maxLength: 80 },
  fileUrl: { type: String, required: true },
  description: { type: String, required: true, trim: true, minLength: 20 },
  createdAt: { type: Date, required: true, default: Date.now },
  hashtags: [{ type: String, trim: true }],
  meta: {
    views: { type: Number, default: 0, required: true },
    rating: { type: Number, default: 0, required: true },
  },
  // ref:'User`는 mongoose에게 owner에 id를 User model에 있는 ObjectId를 저장 하겠다고 알려주는거.
  owner: { type: mongoose.Schema.Types.ObjectId, required: true, ref: 'User' },
});

User.js

const userSchema = new mongoose.Schema({
  email: { type: String, required: true, unique: true },
  avatarUrl: String,
  socialOnly: { type: Boolean, default: false },
  username: { type: String, required: true, unique: true },
  password: { type: String },
  name: { type: String, required: true },
  location: String,
  videos: [{ type: mongoose.Schema.Types.ObjectId, ref: 'Video' }],
});
import Video from '../models/Video';
import User from '../models/User';
const video = await Video.findById(id).populate('owner');

populate('owner')를 하면 user 객체 전체를 값으로 가져옴.

populate 하기전.

populate 한 후

0개의 댓글