[英]How Do I Query 7 Days Ago in Shopify Graphql?
我正在嘗試使用 shopify 的 graphql 查詢過去 7 天的訂單數據。 我的查詢成功提取了所有訂單數據,但我無法縮小日期范圍。
此查詢適用於所有數據:
const currentOrders = await client.query({
data: {
query: GET_ALL_LINE_ITEMS,
variables: { endCursor },
},
});
const GET_ALL_LINE_ITEMS = `
query storeOrders($endCursor: String) {
orders(first:25, reverse:true, sortKey: CREATED_AT, after: $endCursor) {
edges {
node {
lineItems(first: 10) {
edges{
node {
name
quantity
variantTitle
variant {
id
product {
id
}
}
}
}
}
}
}
pageInfo {
hasNextPage, endCursor
}
}
}
`;
這是我為獲取過去 7 天而創建的查詢:
let date = new Date();
let sevenDaysAgo = date - 1000 * 60 * 60 * 24 * 1;
sevenDaysAgo = new Date(sevenDaysAgo);
let dd = String(sevenDaysAgo.getDate()).padStart(2, "0");
let mm = String(sevenDaysAgo.getMonth() + 1).padStart(2, "0");
let yyyy = sevenDaysAgo.getFullYear();
sevenDaysAgo = yyyy + "-" + mm + "-" + dd;
const currentOrders = await client.query({
data: {
query: GET_ALL_LINE_ITEMS,
variables: { endCursor, sevenDaysAgo },
},
});
const GET_ALL_LINE_ITEMS = `
query storeOrders($endCursor: String) {
orders(first:25, query:"created_at:>'$sevenDaysAgo'", reverse:true, sortKey: CREATED_AT, after: $endCursor) {
edges {
node {
lineItems(first: 10) {
edges{
node {
name
quantity
variantTitle
variant {
id
product {
id
}
}
}
}
}
}
}
pageInfo {
hasNextPage, endCursor
}
}
}
`;
它運行,但是,不遵守日期並顯示請求日期之前的結果。
這就是Shopify 文檔所說的:
{
orders(first: 10, query:"created_at:>2019-12-01") {
edges {
node {
id
updatedAt
}
}
}
}
如何在給定日期后提取所有 graphql 結果?
編輯:
執行以下查詢可以告訴我這是變量的問題:
const GET_ALL_LINE_ITEMS = `
query storeOrders($endCursor: String) {
orders(first:25, query:"updated_at:>2019-12-01", reverse:true, sortKey: CREATED_AT, after: $endCursor) {
edges {
node {
lineItems(first: 10) {
edges{
node {
name
quantity
variantTitle
variant {
id
product {
id
}
}
}
}
}
}
}
pageInfo {
hasNextPage, endCursor
}
}
}
`;
我在查詢中使用單引號,這似乎對我有用。
{“查詢”:“created_at:>'2022-03-28'”}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.