创建一个采用 ENUM 的多个值的突变
Create a mutation which takes multiple values of an ENUM
我创建了一个模型,其中有一个字段接受 ENUM
的多个值。我如何编写一个允许我一次添加多个值的突变?
例如,我有一个注册突变:
export const signUp = gql`
mutation signUp(
$email: String!,
$name: String!,
$password: String!,
$attended: [USER_ATTENDED!]!,
$role: [USER_ROLE!]!,
) {
createUser(
authProvider: {
email: {
email: $email,
password: $password,
},
},
name: $name,
attended: $attended,
role: $role,
) {
id,
createdAt,
name,
email,
}
}
`;
我希望 $attended
和 $role
接受多个值。
您可以使用方括号传递多个值:[]
。在您的情况下,GraphiQL 中的变量需要像这样:
{
"email": "name@email.com",
"name": "Name",
"password": "secret",
"attended": ["A", "B"],
"role": ["ROLE_A", "ROLE_B"]
}
在 Apollo 中,这应该有效:
const variables = {
email: "name@email.com",
name": "Name",
password: "secret",
attended: ["A", "B"],
role: ["ROLE_A", "ROLE_B"]
}
我创建了一个模型,其中有一个字段接受 ENUM
的多个值。我如何编写一个允许我一次添加多个值的突变?
例如,我有一个注册突变:
export const signUp = gql`
mutation signUp(
$email: String!,
$name: String!,
$password: String!,
$attended: [USER_ATTENDED!]!,
$role: [USER_ROLE!]!,
) {
createUser(
authProvider: {
email: {
email: $email,
password: $password,
},
},
name: $name,
attended: $attended,
role: $role,
) {
id,
createdAt,
name,
email,
}
}
`;
我希望 $attended
和 $role
接受多个值。
您可以使用方括号传递多个值:[]
。在您的情况下,GraphiQL 中的变量需要像这样:
{
"email": "name@email.com",
"name": "Name",
"password": "secret",
"attended": ["A", "B"],
"role": ["ROLE_A", "ROLE_B"]
}
在 Apollo 中,这应该有效:
const variables = {
email: "name@email.com",
name": "Name",
password: "secret",
attended: ["A", "B"],
role: ["ROLE_A", "ROLE_B"]
}