1

我有一个包含产品的内容模型“类别”(也是一个内容模型)。现在我必须获取产品链接的类别。为此,我得到了产品 url_name(唯一)。

我在 kentico-delivery-sdk (JS) 文档中搜索了一个过滤器,它可以深入到对象/链接内容模型中。

       categoryByProduct: async (
          _,
          { product, limit = 1,depth, order, language }
        ) => {
          const query = deliveryClient.items();
          language && query.languageParameter(getKcCodeFromLang(language));
          limit && query.limitParameter(limit);
          depth && query.depthParameter(depth);
          order && query.orderParameter(order);
          query.containsFilter("elements.produkte[].url_name", product)

          const response = await query.getPromise();
          return response.items;
        },

使用这种方法,我从未得到 GraphQL 的响应。这是错误的过滤器吗?

4

1 回答 1

0

Kentico Cloud API 的过滤当前不允许您在嵌套属性上指定过滤器,elements.produkte[].url_name因此当直接针对 Delivery API 运行时,过滤器会给出此异常:

运算符“[].produkte”未被识别为有效运算符。

您正在尝试做的是完全有效的方案,尽管目前您必须对您的产品提出额外的请求,对其进行过滤并结合您的查询结果以给出最终结果。

于 2019-07-31T10:07:20.540 回答