enctype="multipart/form-data"
//new.ejs
<form action="/campgrounds" method="POST"
novalidate class="validated-form" enctype="multipart/form-data">
input
의 type
을 file
로 변경한다.//new.ejs
<input type="file" name="image" id="">
output
Multer 미들웨어는 Express에 적용하고
multipart/form-data
를 파싱하고 다룬다. 주로 파일을 업로드할 때 사용한다.
body 객체와 file 혹은 files 객체를 요청 객체에 추가한다.
// routes/campgrounds.js
const multer = require('multer')
const upload = multer({ dest: 'uploads/' })
router.route('/')
.post(upload.single('image'),(req, res) => {
console.log(req.body, req.file);
})
console.log
<input type="file" name="image" id="" multiple>
multiple
추가한다.
// routes/campgrounds.js
router.route('/')
.post(upload.array('image'),(req, res) => {
console.log(req.body, req.files);
})
.post(isLoggedIn, upload.array('image'), validateCampground );