关于GraphQL更新的Sequelize不会返回任何内容

时间:2016-12-12 02:37:03

标签: javascript sequelize.js graphql graphql-js

GraphQL使用Sequelize update返回null。

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

这里我的请求使用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更新会犯错误。谁能解释会发生什么?

1 个答案:

答案 0 :(得分:2)

我的不好,我正在使用 MySQL Sequelize 只支持 PostgreSQL 如果您需要返回affectedRows,但是如果你使用 MySQL ,您只能返回affectedCount

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