Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 从Collection.create和normal表单发送时的不同请求内容_Node.js_Backbone.js_Multer - Fatal编程技术网

Node.js 从Collection.create和normal表单发送时的不同请求内容

Node.js 从Collection.create和normal表单发送时的不同请求内容,node.js,backbone.js,multer,Node.js,Backbone.js,Multer,我尝试使用主干+ReactJS构建一个文件上传站点,我使用主干模型帮助我保存文件,并使用nodejs+multer保存到mongodb后端 但是我发现这个模块有一些问题, 因为我使用了一个简单的表单来上传文件,没有主干模型,并且使用multer在后端进行处理,它工作得很好 因此,我深入研究了从主干模型save发送的请求,我使用collection.create和从普通表单发送的请求,下面是我得到的: 标准形式: 主干模型具有: 很明显,请求负载在主干模型中是一团乱,对吗? 为什么有两种内容配

我尝试使用主干+ReactJS构建一个文件上传站点,我使用主干模型帮助我保存文件,并使用nodejs+multer保存到mongodb后端

但是我发现这个模块有一些问题, 因为我使用了一个简单的表单来上传文件,没有主干模型,并且使用multer在后端进行处理,它工作得很好

因此,我深入研究了从主干模型save发送的请求,我使用collection.create和从普通表单发送的请求,下面是我得到的:

标准形式:

主干模型具有:

很明显,请求负载在主干模型中是一团乱,对吗? 为什么有两种内容配置?如果名称错误,则名称应该是输入的名称,如

有人知道发生了什么事吗

我不确定我是否在正确的地方,如果我错了,请告诉我,我感谢你的帮助


谢谢。

好吧……经过几个小时的痛苦,我知道发生了什么,其实很简单

事实证明,multer{storage:storageConfig}.single'Input Name'中的输入名称应该与主干模型的属性键相同

例如,如果我的主干模型

app.File = Backbone.Model.extend({
    idAttribute : '_id',
    urlRoot: '/db/collections',
    fileAttribute: 'uploadFile',
    defaults: {
        _id: null,
        title: ''
    }   
});
那么,我的骡子应该是这样的

`multer({ storage: storageConfig }).single('uploadFile')`
当然,当您尝试在集合中创建和保存模型时, 必须指定相同的属性值

例如:

var file_data = $(".new-file").prop("files")[0];   // Getting the properties of file from file field
        var fileName = $(".new-file").val().split('/').pop().split('\\').pop();
            if (fileName) {
            this.props.files.create({
                title: fileName,
                uploadFile: file_data
            },{ formData: true , wait: true});
            ReactDOM.findDOMNode(this.refs.newField).value = '';
        }
就这样

但是我不确定在这个解决方案中获取req.body是否合适。。如果我弄明白了,我以后会更新的

谢谢