Express〜3.0.0rc3でNode v0.8.8を使用する(記録のために、ここに私のpackages.jsonのコンテンツがあります):
{
"name": "application-name",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "node app"
},
"dependencies": {
"express": "~3.0.0rc3",
"jade": "*",
"ejs": "~0.8.2",
"express-partials": "0.0.5",
"connect-flash": "~0.1.0",
"connect-redis": "~1.4.1",
"validator": "~0.4.11",
"express-validator": "~0.2.4",
"express-form": "~0.6.2"
}
}
また、ログインフォームを検証するためにPOSTを実行しようとすると、次のエラーが発生します。
TypeError: Object #<ServerResponse> has no method 'local'
at /Users/nblavoie/Documents/projets/erphdfnode/node_modules/express-form/lib/form.js:32:15
at callbacks (/Users/nblavoie/Documents/projets/erphdfnode/node_modules/express/lib/router/index.js:165:11)
at param...
コントローラに問題がありますか?コードは次のとおりです。
var routes = function(app)
{
var form = require("express-form"),
field = form.field;
app.post("/login",
form(
field("courriel").trim().isEmail(),
field("password").trim().notEmpty()
),
function(req, res)
{
if (!req.form.isValid) {
renderLogin("Courriel ou de mot de passe incorrect.", req);
} else {
console.log("OK!!!!!");
}
}
);
};