article-add.js 778 B

123456789101112131415161718192021222324
  1. const formidable = require('formidable')
  2. const path = require('path');
  3. const {Article} = require('../../model/article');
  4. module.exports = async (req, res) => {
  5. // 创建表单解析对象
  6. const form = new formidable.IncomingForm();
  7. // 上传到服务器中的路径
  8. form.uploadDir = path.join(__dirname, '../', '../', 'public', 'uploads');
  9. // 保留上传文件的后缀
  10. form.keepExtensions = true;
  11. form.parse(req, async(err, fields, files) => {
  12. // fields是普通字段信息,files是文件字段信息
  13. await Article.create({
  14. title: fields.title,
  15. author: fields.author,
  16. publishDate: fields.publishDate,
  17. cover: files.cover.path.split('public')[1],
  18. content: fields.content,
  19. });
  20. res.redirect('/admin/article')
  21. })
  22. }