Uploading and storing media
Registered users on MERN Mediastream will be able to upload videos from their local files to store the video and related details directly on MongoDB using GridFS.
Media model
In order to store media details, we will add a Mongoose Schema for the media model in server/models/media.model.js
with fields to record the media title, description, genre, number of views, created time, updated time, and reference to the user who posted the media.
mern-mediastream/server/models/media.model.js
:
import mongoose from 'mongoose' import crypto from 'crypto' const MediaSchema = new mongoose.Schema({ title: { type: String, required: 'title is required' }, description: String, genre: String, views: {type: Number, default: 0}, postedBy: {type: mongoose.Schema.ObjectId, ref: 'User'}, created: { type: Date, default: Date.now }, updated: { type: Date } }) export default mongoose.model('Media', MediaSchema)
MongoDB GridFS to store large files
In previous...