For every user has gender property. The gender property is enum in graphql.
I want to query all users that have female and male values only.
Why when I write my query on graphql playground I got an error message?
I also try to write: userMany(filter: { gender: [female, male] }) { but I got syntax error.
Is there another way to write this query to get the results?
The query:
{
userMany(filter: { gender: female AND male }) {
name
age
gender
someMixed
salaryDecimal
virtualField
}
}
The error:
{
"errors": [
{
"message": "Syntax Error: Expected :, found Name \"male\"",
"stack": [
"Syntax Error: Expected :, found Name \"male\"",
"",
"GraphQL request:2:41",
"1 | {",
"2 | userMany(filter: { gender: female AND male }) {",
" | ^",
"3 | name",
" at syntaxError (/app/node_modules/graphql/error/syntaxError.js:15:10)",
" at expectToken (/app/node_modules/graphql/language/parser.js:1428:38)",
" at parseObjectField (/app/node_modules/graphql/language/parser.js:588:3)",
" at item (/app/node_modules/graphql/language/parser.js:571:12)",
" at any (/app/node_modules/graphql/language/parser.js:1500:16)",
" at parseObject (/app/node_modules/graphql/language/parser.js:576:13)",
" at parseValueLiteral (/app/node_modules/graphql/language/parser.js:470:14)",
" at parseArgument (/app/node_modules/graphql/language/parser.js:348:12)",
" at many (/app/node_modules/graphql/language/parser.js:1515:16)",
" at parseArguments (/app/node_modules/graphql/language/parser.js:334:54)",
" at parseField (/app/node_modules/graphql/language/parser.js:321:16)",
" at parseSelection (/app/node_modules/graphql/language/parser.js:295:76)",
" at many (/app/node_modules/graphql/language/parser.js:1515:16)",
" at parseSelectionSet (/app/node_modules/graphql/language/parser.js:282:17)",
" at parseOperationDefinition (/app/node_modules/graphql/language/parser.js:192:21)",
" at parseExecutableDefinition (/app/node_modules/graphql/language/parser.js:169:12)"
]
}
]
}
Try this: