Nodejs保存图像名称& mongo的路径并将图像文件保存到文件系统

时间:2013-04-28 22:24:35

标签: javascript node.js express connect formidable

我想根据表单帖子的参数动态更改上传图片路径。我没有使用强大的强大功能,而是使用express启用bodyParser并将默认上传路径设置为主应用程序上的配置。我将来如何访问它?我想根据用户输入动态更改此路径,因此可以说是public / img / 2009 / someProject。最后2个路径选择器是动态的。 public / img在express bodyParser中设置为默认配置。

下面是一个类似的问题,但我找不到一个好的答案。 how can I access the uploadDir attribute of express?

// set in the main app.js
app.configure(function() {

app.use(express.bodyParser({
  uploadDir: __dirname + '\\public\\img',
  keepExtensions: true
}));

});


// need to set the upload path here 
exports.addPortfolio = function(req, res) {

    var portfolio = req.body,
        parseName = req.body.name,
        pathName = parseName.replace(/\s+/g, '-').toLowerCase();

    console.log('Adding portfolio: ' + JSON.stringify(portfolio));
    console.log(req.body.year);
    console.log('parseName'+parseName);

    // attempt to overwrite here 
    app.use(express.bodyParser({
      uploadDir: __dirname + '\\public\\img\\'+req.body.year+'\\'+pathName
    }));

    db.collection('portfolios', function(err, collection) {
        collection.insert(portfolio, {safe:true}, function(err, result) {
            if (err) {
                res.send({'error':'An error has occurred'});
            } else {
                console.log('Success: ' + JSON.stringify(result[0]));
                res.send(result[0]);
            }
        });
    });
};

0 个答案:

没有答案