【发布时间】:2015-03-04 10:14:49
【问题描述】:
我正在尝试学习 sequelize.js,但我收到了更新方法的 TypeError:
TypeError: 无法读取未定义的属性“参数”
我正在尝试获取路线的参数并更改它的值。我正在尝试获取用户名并更改其用户名和密码。这是我的代码:
module.exports = function (sequelize) {
var model = require("../models/employer_model")(sequelize);
var Employer = model.Employer;
return {
create: function (req, res) {
if (req.body.username && req.body.password != null) {
var newEmployer = {
username: req.body.username,
password: req.body.password
}
Employer.create(newEmployer).success(function () {
res.send(200);
res.json(req.dataValues);
});} else {
res.send(406);
}
},
get: function (req, res) {
Employer.findAll().success(function (employers) {
res.send(employers);
});
},
update: function (req, res) {
Employer.req.params.id = req.body;
Employer.save().success(function (employers){
res.send(200);
res.json(req.dataValues);
});
}
};
};
这里是 server.js
// app dependencies
var express = require("express");
var Sequelize = require("sequelize");
var bodyParser = require('body-parser');
var morgan = require('morgan');
var app = express();
var models = require("./models");
//sequalize initialization
var sequelize = new Sequelize("postgres://rahul:jobletics@localhost:5432/jobletics");
var employerRoute = require("./routes/employer_route")(sequelize);
//middleware
app.use(bodyParser());
app.use(morgan('dev'));
models.sequelize.sync().success(function (err) {
console.log('Express server listening on port 5000');
app.get("/employer", employerRoute.get);
app.post("/employer", employerRoute.create);
app.put("/employer/:id", employerRoute.update);
app.listen(5000);
});
有什么想法吗?
【问题讨论】:
-
可能
Employer.req未定义。 -
那么用户名应该是什么?
-
请显示你的 app.js(where express init)
-
请看我更新了
标签: javascript node.js express sequelize.js