我想使用相同的变异来添加和更新graphQL中的资源。
问题是,如果我设置了必填字段,我需要在每次想要更新资源时设置所有字段。
示例:
const mutation = {
user: {
type: UserType,
args: {
id: {
type: GraphQLString
},
userName: {
type: GraphQLNonNull(GraphQLString)
},
name: {
type: GraphQLString
},
password: {
type: GraphQLNonNull(GraphQLString)
},
password_confirmation: {
type: GraphQLNonNull(GraphQLString)
}
},
resolve: (obj, input) => {
if (input.id !== undefined) {
updateUser(input.id, input)
} else {
addUser(input)
}
}
}
}
在这种情况下,如果我想更新用户名,我还要再次设置用户名,密码和password_confirmation。