2016-10-06 2 views
0

:어떤 입력이 강력한 opnt 파일을 보내는 지 어떻게 알 수 있습니까? 이 질문에 후

How set a function into limits parameters on multer?

이 대답을받지 않는 것을, 나는 대안을 찾고 있어요 나는 강력한보고 있어요. 나는 다른 튜토리얼을 발견하고 지금은이 코드를 가지고 : 나는 코드의 첫 번째 부분에있는 파일을 반복하면 내가 좋아하는 어떤 것을받을 지금

exports.formidable= function (req, res, cb){         var form = new formidable.IncomingForm();         form.multiples = true;         form.parse(req, function(err, fields, files) {             res.end(util.inspect({fields: fields, files: files}));         });

        form.on('end', function(fields, files) {

            for(var i = 0; i < this.openedFiles.length; i++) {                 /* Temporary location of our uploaded file /                 var temp_path = this.openedFiles[i].path;                 / The file name of the uploaded file /                 var file_name =Date.now()+"-"+ this.openedFiles[i].name;                 / Location where we want to copy the uploaded file */                 var new_location = './files/';

                fs.move(temp_path, new_location + file_name, function (err) {                     if (err) {                         console.error(err);                     } else {                         console.log("success!")                     }                 });             }         });         return;

};

을 [{input_file1 : {파일의 속성}} {input_file2 : {파일의 속성}}]

및 반복 openedFiles : [{0 : {파일의 속성}, {1 : 파일의 속성}}]

이제

, 나는 두 객체가 특정 될 수있다 같은 순서로? 그리고, 만약 그 대답이 제가 생각한 것처럼, 두 번째 객체에서 입력 이름을 검색 할 수 있습니까? 불가능한 경우이를 해결할 수있는 해결 방법이 있습니까?

도움 주셔서 감사합니다.

답변

0

"더티"솔루션을 발견했지만 지금은 제대로 작동하므로 내 코드를 공유하고 싶습니다. rules_upload.js에서 이 코드를 추가

var tmp=''; var x=0;

form.on('fileBegin', function(name, file) { if(x>0) { this.openedFiles[(x-1)].fieldName=tmp; } x++; tmp=name; });

        form.on('end', function(fields, files) { this.openedFiles[(this.openedFiles.length-1)].fieldName=tmp;

그래서 내가 fieldName에 전화 ADDA 새로운 속성이 정보를 검색!