【发布时间】:2020-11-07 00:59:50
【问题描述】:
我需要验证器来检查错误并登录到控制台(如果有)
下面是我的代码;
const expressValidator = require('express-validator');
const { check, validationResult } = require('express-validator/check');
const router = express.Router();
router.post('/add-page', function(req, res){
check("title", "Title must have a value.").not().isEmpty();
check("content", "Content must have a value.").not().isEmpty();
var title = req.body.title;
var slug = req.body.slug.replace(/\#+/g, "-").toLowerCase();
if (slug == "") {
slug = title.replace(/\#+/g, "-").toLowerCase();
}
var content = req.body.content;
var errors = validationResult(req);
if (errors){
console.error(errors);
res.render("admin/add_page",{
errors: errors,
title:title,
slug:slug,
content:content
});
} else {
Page.findOne({slug:slug}, function(err, page){
if (page) {
req.flash("danger","Page slug exists, choose another.");
res.render("admin/add_page",{
title:title,
slug:slug,
content:content
});
} else {
var Page = new Page({
title:title,
slug:slug,
content:content,
sorting:0
});
Page.save(function(err){
if (err) {
return console.log(err);
} else {
req.flash("Success", "Page added!");
res.redirect("/admin/pages");
}
})
}
})
}
});
//Exports
module.exports = router;
但我在控制台中的结果是
Result { formatter: [Function: formatter], errors: [] }
【问题讨论】:
标签: javascript node.js arrays express validation