文件夹的node.js流文件上载结构
我正在使用node和express为我的站点做一点CMS。 我想使用一个表单放置多个文件,并将这些文件存储到public/image/:foldername中 我创建了一个表单,它有两个输入: 1.event——哪一个是事件名称 2.file——以直观方式输入的文件 现在,当管理员登录并看到此表单时,他正在键入自己的事件名称,例如“ “生日” 以及与之关联的图像文件 最后,我希望结构是这样的: 公开的/ /形象 /生日 图1 图2 图3 图4 以下是HTML:文件夹的node.js流文件上载结构,node.js,file-upload,express,stream,Node.js,File Upload,Express,Stream,我正在使用node和express为我的站点做一点CMS。 我想使用一个表单放置多个文件,并将这些文件存储到public/image/:foldername中 我创建了一个表单,它有两个输入: 1.event——哪一个是事件名称 2.file——以直观方式输入的文件 现在,当管理员登录并看到此表单时,他正在键入自己的事件名称,例如“ “生日” 以及与之关联的图像文件 最后,我希望结构是这样的: 公开的/ /形象 /生日 图1 图2 图3 图4 以下是HTML: <div class="pa
<div class="panel panel-primary spacer3">
<div class="row">
{{#if error}}
<div data-alert class="alert-box">
{{error}}
<a href="#" class="close">×</a>
</div>
{{/if}}
<div class="small-4 medium-4 large-4 columns text-center">
<h1>פאנל ניהול</h1>
</div>
<form method="POST" action="/login">
<div class="row">
<div class="large-12 columns rtl">
<label>שם משתמש</label>
<input type="text" name="username" placeholder="שם משתמש" />
</div>
</div>
<div class="row">
<div class="large-12 columns rtl">
<label>סיסמא</label>
<input type="password" name="password" placeholder="סיסמא" />
</div>
</div>
<div class="row">
<div class="large-12 columns">
<input class="button [radius round]" type="submit" value="התחבר" />
</div>
</div>
</form>
</div>
</div>
readstream和writestream不工作,我不知道如何创建此结构。
应该是
<form method="POST" action="/login" enctype="multipart/form-data">
应该是
var file = fs.createReadStream(req.files.formName.path);
formName在哪里
<input type='file' name='formName' />
以下是iv所做的:
从npm安装的mkdirp
mkdirp=require('mkdirp');
这将创建一个新文件夹
readFile将读取这些图像
exports.photos = function(req, res){
console.log(req.body);
console.log(req.files)
console.log(req.files.img_file);
console.log("Uploading File");
fs.readFile(req.files.img_file.path, function (err, data) {
var newPath = __dirname + "./public/img/albums";
fs.writeFile(newPath, data, function (err) {
res.redirect("back");
});
});
};
//Post request to create new album
exports.createAlbum = function(req, res){
if (req.body && req.body.album)
var album_name = req.body.album;
else
var album_name = 'unknown_album-' + (parseInt(Math.random() * 5) + 1);
console.log(__dirname);
mkdirp('./public/img/albums/' + album_name, function (err) {
if (err)
console.error(err);
else
{
console.log('Folder created.');
res.render('admin/panel', {
title: 'אדמין',
message: 'תיקייה נפתחה בהצלחה',
album: album_name
});
}
});
};
<input type='file' name='formName' />
exports.photos = function(req, res){
console.log(req.body);
console.log(req.files)
console.log(req.files.img_file);
console.log("Uploading File");
fs.readFile(req.files.img_file.path, function (err, data) {
var newPath = __dirname + "./public/img/albums";
fs.writeFile(newPath, data, function (err) {
res.redirect("back");
});
});
};
//Post request to create new album
exports.createAlbum = function(req, res){
if (req.body && req.body.album)
var album_name = req.body.album;
else
var album_name = 'unknown_album-' + (parseInt(Math.random() * 5) + 1);
console.log(__dirname);
mkdirp('./public/img/albums/' + album_name, function (err) {
if (err)
console.error(err);
else
{
console.log('Folder created.');
res.render('admin/panel', {
title: 'אדמין',
message: 'תיקייה נפתחה בהצלחה',
album: album_name
});
}
});
};