我正在使用 sailsjs,并且使用 postman ,我尝试发送邮件( http://localhost:1337/user?name=plz)(http://localhost:1337/user?name=plz)(http://localhost:1337/user?name=plz) 但我收到错误:
TypeError: Cannot read property 'name' of undefined
at Object.module.exports.create (C:\Users\achraf\Desktop\crud\cruds\api\controllers\UserController.js:13:29)
at wrapper (C:\Users\achraf\AppData\Roaming\npm\node_modules\sails\node_modules\lodash\index.js:3095:19)
at routeTargetFnWrapper (C:\Users\achraf\AppData\Roaming\npm\node_modules\sails\lib\router\bind.js:176:5)
at callbacks (C:\Users\achraf\AppData\Roaming\npm\node_modules\sails\node_modules\express\lib\router\index.js:164:37)
at param (C:\Users\achraf\AppData\Roaming\npm\node_modules\sails\node_modules\express\lib\router\index.js:138:11)
at pass (C:\Users\achraf\AppData\Roaming\npm\node_modules\sails\node_modules\express\lib\router\index.js:145:5)
at nextRoute (C:\Users\achraf\AppData\Roaming\npm\node_modules\sails\node_modules\express\lib\router\index.js:100:7)
at callbacks (C:\Users\achraf\AppData\Roaming\npm\node_modules\sails\node_modules\express\lib\router\index.js:167:11)
at alwaysAllow (C:\Users\achraf\AppData\Roaming\npm\node_modules\sails\lib\hooks\policies\index.js:158:11)
at routeTargetFnWrapper (C:\Users\achraf\AppData\Roaming\npm\node_modules\sails\lib\router\bind.js:176:5)
at callbacks (C:\Users\achraf\AppData\Roaming\npm\node_modules\sails\node_modules\express\lib\router\index.js:164:37)
at param (C:\Users\achraf\AppData\Roaming\npm\node_modules\sails\node_modules\express\lib\router\index.js:138:11)
at pass (C:\Users\achraf\AppData\Roaming\npm\node_modules\sails\node_modules\express\lib\router\index.js:145:5)
at nextRoute (C:\Users\achraf\AppData\Roaming\npm\node_modules\sails\node_modules\express\lib\router\index.js:100:7)
at callbacks (C:\Users\achraf\AppData\Roaming\npm\node_modules\sails\node_modules\express\lib\router\index.js:167:11)
at module.exports (C:\Users\achraf\AppData\Roaming\npm\node_modules\sails\lib\hooks\cors\clear-headers.js:14:3) [TypeError: Cannot read property 'name' of undefined]
UserController.js
module.exports = {
create:function(req,res){
var param = req.body.name;
User.create({name :param.name}).exec(function(err,user){
//console.log(success);
if(err){
res.send("Error:Sorry!Something went Wrong");
}else{
return res.redirect("/user");
}
});
}
};
routes.js
'post /user': 'UserController.create'
User.js(模型)
module.exports = {
attributes: {
//_id:'p1',
name:'STRING'
}
};
最佳答案
假设 req.body.name
返回格式正确的数据,您需要使用 param
而不是 param.name
因为您将 name
属性直接设置为 param
变量。
所以这样做:
var param = req.body.name;
User.create({name : param}).exec(function(err,user){
关于javascript - 风 sails js : TypeError: Cannot read property 'name' of undefined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36731206/