Sequelize on GraphQL update 不返回任何内容

GraphQL 使用 Sequelize 更新返回 null.

GraphQL return null using Sequelize update.

updatePerson: {
  type: Person,
  args: {
    value: {
      type: UpdatePersonInputType
    },
    where: {
      type: WhereUpdatePersonInputType
    }
  },
  resolve(_, args) {
    return Db.models.persons.update( args.value, {
      where: args.where
    });
  }
},

这是我使用 GraphiQL 的请求

Here my request using GraphiQL

mutation {
  updatePerson(value: {firstName: "John", lastName: "Doe", email: "johndoe@example.com"}, where: {id: 1}){
    id
    firstName
    lastName
    email
  }
}

这就是结果

{
  "data": {
    "updatePerson": {
      "id": null,
      "firstName": null,
      "lastName": null,
      "email": null
    }
  }
}

也许我在使用 Sequelize 更新时会出错.谁能解释发生了什么?

Maybe I make mistakes using Sequelize update. Can anyone explain what happens?

推荐答案

不好意思,我用的是MySQL,Sequelize只支持PostgreSQL> 如果需要返回affectedRows,但如果使用MySQL则只能返回affectedCount.

My bad, I'm using MySQL, Sequelize just support PostgreSQL if you need return affectedRows, but if you use MySQL you just can only return affectedCount.

http://docs.sequelizejs.com/en/latest/api/model/#updatevalues-options-promisearrayaffectedcount-affectedrows

相关文章