无法在Sequelize.js上创build一对多的子实例
我正在使用sequize创build父项和子项实例,但会抛出以下错误。
Site.hasMany(Group,{as:'groups'}); Group.belongsTo(Site); //not working Site.create(siteData).then((site)=>{ site.addGroups(groupData).then(()=>{ //also tried addGroup next(); }); }); //this works Site.create(siteData).then((site)=>{ groupData.SiteId=site.id; Group.create(groupData).then(()=>{ next(); }); });
错误:
未处理的拒绝types错误:val.replace不是Object.SqlString.escape(c:\ APi \ node_modules \ sequelize \ lib \ sql-string.js:61:15)上Object.QueryGenerator.escape(c:\ APi \ node_modules \ sequelize \ lib中\方言\抽象\查询generator.js:983:22)
假设你有一个任务和不同的时间表,所以你可以尝试这样的事情,你可以创build大部分时间表或单一的任务,以及改变bulkeCreate
create
var ts=req.body.task_time; tasks.create(req.body).then(function (taskvalues) { //for adding taskId with each object to prepare object for bulk for(var i=0;i<ts.length;i++) ts[i].taskId = taskvalues.id; taskschedule.bulkCreate(ts,{ individualHooks: true }).then(function (allschedule) { res.status(200).json({"message":"Post saved successfully"}); }).catch(function (err) { res.status(500).json(err) }).catch(function (err) { res.status(500).json(err); }) })
你的json为taskschedule和任何值为post任务设置
"task_time": [ { "shift": "m", "date": "01/23/2017", "start_time": "2017-01-22 19:00:00", "end_time": "2017-01-23 19:00:00", "status":"2", "user_id":"12" }, { "shift": "m", "date": "01/23/2017", "start_time": "2017-01-22 19:00:00", "end_time": "2017-01-23 19:00:00", "status":"2", "user_id":"12" } ],
如果你有像下面这样的代码将自定义属性添加到对象,你将面临这个问题。
Object.prototype.xxx = function(o) { ... }
当Sequelize组合sql时,它循环遍历参数的所有属性,这将包括这个自定义属性。
- Mongoose填充API请求和Postman,返回空数组?
- 监听节点中同一应用中的两个端口
- 如何在Knex JS中使用IS NOT NULL
- nodejs使用libuv插件asynchronouscallback
- 使用Npm.depends声明testing依赖关系
- 在Heroku和node.js的每个请求上运行的后台作业
- 节点教程 – LearnYouNode – 杂耍asynchronous – 使用嵌套的callback
- app.configure(function){} typeerror undefined不是一个函数
- 使用pdfkit生成PDF文件并将其发送到nodejs-expressjs中的浏览器