/ / एक्सप्रेस अपलोड नोड्स mjter का उपयोग कर अपलोड करें? - जावास्क्रिप्ट, नोड। जेएस, एक्सप्रेस, पग

एक्सप्रेस नोडजेस मल्टर का उपयोग कर फ़ाइल अपलोड करें? - जावास्क्रिप्ट, node.js, एक्सप्रेस, पग

मैं multer के साथ एक फ़ाइल छवि अपलोड करने का प्रयास कर रहा हूंएक्सप्रेस में फाइल और फाइल अपलोड हो रही है, लेकिन फाइल का नाम डेटाबेस में सेव नहीं है। मैं एक्सप्रेस के साथ मोनगोडब का उपयोग कर रहा हूं। फ़ाइल नाम noimage.png के रूप में सहेज रहा है।

मार्गों / posts.js: -

router.post("/add", function(req, res, next) {
if(req.files.mainimage){
console.log("Uploading files...");

// File Info
var mainImageOriginalName = req.files.mainimage.originalname;
var mainImageName = req.files.mainimage.name;
var mainImageMime = req.files.mainimage.mimetype;
var mainImagePath = req.files.mainimage.path;
var mainImageExt = req.files.mainimage.extension;
var mainImageSize = req.files.mainimage.size;
}
else{
var mainImageName = "noimage.png";
}
//console.log(req.files.mainimage.name);

// Check for errors
var errors = req.validationErrors();

if(errors){
res.render("add", {
errors: errors,
});
}
else{
var posts = db.get("posts");

// Submit to db
posts.insert({
mainimage: mainImageName
}, function(err, post){
if(err){
res.send("There was an issue submitting the post");
}
else{
req.flash("success", "Post Submitted");
res.location("/posts");
res.redirect("/posts");
}
});
}
});

उत्तर:

जवाब के लिए 0 № 1

यदि आप उपयोग कर रहे हैं multer ऐसा लगता है कि आपने "स्पेसर के विनिर्देशन के रूप में निर्दिष्ट नहीं किया है

router.post("/add", multer({ dest: "./uploads/"}).single("myimage"), function(req,res){...})