我特别使用shopify graphql管理api来查询订单。
我想搜索一个嵌套的相关字段。
下面是我的问题。
export const orderHistoryQuery = gql`
query Order($productsFirst: Int!, $productsAfter: String, $filterQuery: String) {
orders(first: $productsFirst, after: $productsAfter, reverse: true, query:$filterQuery) {
edges {
cursor
node {
id
name
customer {
id
metafields(first: 10) {
edges {
node {
id
key
value
namespace
}
cursor
}
}
}
totalPriceSet {
shopMoney {
amount
currencyCode
}
}
subtotalPriceSet {
shopMoney {
amount
currencyCode
}
}
totalRefundedSet {
shopMoney {
amount
currencyCode
}
}
currencyCode
email
phone
processedAt
totalShippingPriceSet {
shopMoney {
amount
currencyCode
}
}
totalTaxSet {
shopMoney {
amount
currencyCode
}
}
shippingAddress {
firstName
lastName
address1
address2
city
province
zip
country
}
billingAddress {
firstName
lastName
address1
address2
city
province
zip
country
}
customAttributes {
key
value
}
}
}
}
}
`;我想真正地查询元字段或任何东西,但它似乎不受支持。我不确定我是有错误的查询语法,还是不支持它。shopify搜索语法文档化并没有真正的帮助,这就是我对graphql的知识崩溃的地方。
在graphql中可以这样做吗?我还尝试添加元字段(id:$whateverID),它们的设置不支持元字段。
发布于 2018-11-09 15:12:10
不幸的是,Shopify不支持metafields上的查询过滤器。解决这个问题的最好方法是使用像GraphiQL这样的graphql。如果您转到Apps > Shopify GraphiQL应用程序,Shopify仪表板就内置了这个功能。
使用GraphiQL,您可以看到:



我认为您的选项是按所能进行查询并在得到结果后进行筛选,或者使用客户标记和按标记进行查询。
https://stackoverflow.com/questions/53217252
复制相似问题