Angularjs ng模型来自angular ng文件上载,用于mongodb上载文件的名称

Angularjs ng模型来自angular ng文件上载,用于mongodb上载文件的名称,angularjs,mongodb,multer,ng-file-upload,Angularjs,Mongodb,Multer,Ng File Upload,您好,我有一个问题,上传照片在平均堆栈的RESTAPI。上传已经可以正常工作,但我有一个问题,在我的解决方案中如何传递上传到mongodb的文件名。这是我上传的代码和api我用两个api一个用于表单一个用于页面描述标题另一个用于上传好的决定?还是最好为页面使用一个api?upload works文件在提交表单上上载,但在mongodb featuredImage中为空。如何将名称传递给mongodb,以便使用ng file upload上传im,其中我可以使用ng model=“pageCont

您好,我有一个问题,上传照片在平均堆栈的RESTAPI。上传已经可以正常工作,但我有一个问题,在我的解决方案中如何传递上传到mongodb的文件名。这是我上传的代码和api我用两个api一个用于表单一个用于页面描述标题另一个用于上传好的决定?还是最好为页面使用一个api?upload works文件在提交表单上上载,但在mongodb featuredImage中为空。如何将名称传递给mongodb,以便使用ng file upload上传im,其中我可以使用ng model=“pageContent.featuredImage”

form.html

<textarea ui-tinymce="tinymceOptions"  rows="15" class="form-control" type="text" ng-model="pageContent.content"></textarea>
    <input type="file" ngf-select ng-model="picFile" name="file"
             accept="image/*" ngf-max-size="2MB"
             ngf-model-invalid="errorFile">
    <input type="submit" class="btn btn-success" value="Save" ng-click="uploadPic(picFile)"> 
原料药

page.model.js

    var mongoose = require('mongoose');
var Schema = mongoose.Schema;
    var Page = new Schema({
        title: String,
        url: {type:String, index:{unique:true}},
        content: String,
        menuIndex: Number,
        featuredImage: String,
        date: Date  
    });
    var Page = mongoose.model('Page', Page);
    module.exports=Page;
节点服务器

var storage = multer.diskStorage({ //multers disk storage settings
    destination: function (req, file, cb) {
        cb(null, '../uploads/')
    },
    filename: function (req, file, cb) {
        var datetimestamp = Date.now();
        cb(null,  file.originalname)
    }
});
var upload = multer({ //multer settings
                storage: storage
            }).single('file');
/** API path that will upload the files */
app.post('/upload', function(req, res) {
    upload(req,res,function(err){
      console.log('test');
        if(err){
             res.json({error_code:1,err_desc:err});
             return;
        }
         res.json({error_code:0,err_desc:null});
          });
});

表单/multipart
中将名称作为单独的一部分发送:

  $scope.uploadPic = function(file) {
    file.upload = Upload.upload({
      url: 'http://localhost:3000/upload',
      data: {file: file,
             name: file.name},
    });

有关文件属性的详细信息,请参见

哪里是
Upload。在前端中定义了Upload
?是图书馆吗?如果是的话,哪一个?@Brian他正在使用。啊,书名…-)。对于页面内容,我有另一个api时,如何使用name将其保存在mongodb中?
var storage = multer.diskStorage({ //multers disk storage settings
    destination: function (req, file, cb) {
        cb(null, '../uploads/')
    },
    filename: function (req, file, cb) {
        var datetimestamp = Date.now();
        cb(null,  file.originalname)
    }
});
var upload = multer({ //multer settings
                storage: storage
            }).single('file');
/** API path that will upload the files */
app.post('/upload', function(req, res) {
    upload(req,res,function(err){
      console.log('test');
        if(err){
             res.json({error_code:1,err_desc:err});
             return;
        }
         res.json({error_code:0,err_desc:null});
          });
});
  $scope.uploadPic = function(file) {
    file.upload = Upload.upload({
      url: 'http://localhost:3000/upload',
      data: {file: file,
             name: file.name},
    });