首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用标记对无效值[对象承诺]进行后缀

使用标记对无效值[对象承诺]进行后缀
EN

Stack Overflow用户
提问于 2017-11-18 14:29:41
回答 1查看 2.9K关注 0票数 0

我现在的模型:

代码语言:javascript
复制
let Book = sequelize.define('book', {
  title: Sequelize.STRING,
  author: Sequelize.STRING,
  ...
});

let Recommendation = sequelize.define('recommendations', {
  reasoning: Sequelize.STRING,
  rating: Sequelize.FLOAT,
});

Book.belongsToMany(Recommendation, {through: 'bookrecommendation'});
Recommendation.belongsToMany(Book, {through: 'bookrecommendation'});

当在下面的方法addRecommendation中执行代码添加对图书的推荐时,我得到一个错误:无效的值对象承诺

代码语言:javascript
复制
Book.findOrCreate({
  where: { id: '1' }, defaults: {
    author: 'test',
    title: 'test'
  }
})
.spread(function (b, createdBook) {
const rec = Recommendation.create(
  {
    reasoning: 'test',
    rating: 1
  });
  b.addRecommendation(rec).then((result) => {

  }, (error) => {
    console.log(error);
  })
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-18 15:00:41

这里的问题是,rec是一个承诺。这应该能解决这个问题

代码语言:javascript
复制
Book.findOrCreate({ where: { id: '1' }, defaults: {
  author: 'test',
  title: 'test'
}}).spread(function (b, createdBook) {
Recommendation.create({
 reasoning: 'test',
 rating: 1
}).then((rec) => {
  b.addRecommendation(rec).then((result) => {}, (error) => {
    console.log(error);
   })
})
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47367159

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档