0.0.4 • Published 6 years ago
mongoose-uploader v0.0.4
mongoose-uploader
Mongoose uploader plugin for apollo-upload-server.
Installation
npm install mongoose-uploader --save
Usage
Setup
Use mongoose uploader plugin.
const mongoose = require('mongoose');
const uploaderPlugin = require('mongoose-uploader');
// This hooks up your models and uploader plugin.
mongoose.plugin(uploaderPlugin);
Defining Model
When defining the model field, just use File
type with an uploader
property.
const mongoose = require('mongoose');
const { Schema } = mongoose;
const { File } = Schema.Types;
const ImageUploader = require('../uploaders/ImageUploader');
module.exports = new Schema({
name: String,
age: Number,
avatar: { type: File, uploader: ImageUploader },
photos: [{ type: File, uploader: ImageUploader }]
});
Writing Uploader
An uploader is created with your own config by uploader packages.
const { createAliOSSUploader } = require('mongoose-uploader-ali-oss');
const ImageUploader = createAliOSSUploader({
bucket: 'your-bucket-name',
region: 'oss-cn-shanghai',
accessKeyId: '<your access key id>',
accessKeySecret: '<your access key secret>'
});
module.exports = ImageUploader;
Base Uploaders
Changelog
- Version 0.0.1 (2018-07-27)
- Auto upload when a document is saving to database
- Version 0.0.2 (2018-07-31)
- Auto remove uploads when a document is removed
- Auto remove uploads when a field is assigned a new value
- Version 0.0.3 (2018-08-01)
- Random filename
- Base uploader that provides random filename feature