I created the following plugin....
exports = module.exports = function (req, res, next) {
var body = req.body;
if (typeof body === 'undefined') {
return next(new Error('form-values must be used after body-parser'));
}
var bodyKeys = Object.keys(req.body);
res.locals.fv = function (name, defaultValue) {
if (bodyKeys.indexOf(name) === -1) {
if (typeof defaultValue === 'undefined') {
return '';
} else {
return defaultValue;
}
} else {
return req.body[name];
}
}
return next();
};
Then to use it
var formValues = require('./lib/form-values');
app.use(formValues);
In the view
input(name="username", value="#{fv('username')}", type="text")
You can also use #fv('fieldName', 32)