我正在尝试在我当前的项目中使用Contentful,我正在尝试了解如何根据链接对象中的字段过滤我的查询结果.
我的顶级对象包含一个定义如下的链接:
"name": "Service_Description",
"fields": [
{
"name": "Header",
"id": "header",
"type": "Link",
"linkType": "Entry",
"required": true,
"validations": [
{
"linkContentType": [
"offerGeneral"
]
}
],
"localized": false,
"disabled": false,
"omitted": false
},
Run Code Online (Sandbox Code Playgroud)
此"标头"字段链接到具有此定义的另一种内容类型:
"fields": [
{
"name": "General",
"id": "general",
"type": "Link",
"linkType": "Entry",
"required": true,
"validations": [
{
"linkContentType": [
"genericGeneral"
]
}
],
"localized": false,
"disabled": false,
"omitted": false
},
Run Code Online (Sandbox Code Playgroud)
然后链接到最低级别:
"fields": [{
"name": "TagList",
"id": "tagList",
"type": "Array",
"items": {
"type": "Link",
"linkType": "Entry",
"validations": [
{
"linkContentType": [
"tag"
]
}
]
},
"validations": []
}
Run Code Online (Sandbox Code Playgroud)
其中tagList是这段内容可能具有的标签数组.
我希望能够从顶级对象运行一个查询,该查询说明了这些"Service_Description"内容条目的X号,其中包含来自提供的标签列表的标签.
在PostMan中,我一直在运行:
https://cdn.contentful.com/spaces/{SPACE_ID}/entries?access_token={ACCESS_TOKEN}&content_type=serviceDescription&include=3
Run Code Online (Sandbox Code Playgroud)
我正在尝试添加类似的过滤器:
fields.header.fields.general.fields.tagList.sys.id%5Bin%5D={TAG_SYS_ID}
Run Code Online (Sandbox Code Playgroud)
这显然是不正确的,但我一直在努力如何走这段关系来实现我的目标.仔细阅读文档这似乎与包含有关,但我不确定如何纠正问题.
关于如何实现我的目标的任何方向或者如果可能的话?
小智 2
不幸的是,您所请求的内容目前在 Contentful 中无法实现。
我们在嵌套/引用内容类型方面面临着非常类似的问题,支持人员表示这是不可能的。
我们最终编写了一个非常复杂的系统,使我们能够做您想做的事情。本质上是对引用的内容进行全文搜索,然后查询所有父条目。然后,我们通过迭代父母来查找关系来匹配关系。
抱歉,这再简单不过了。希望开发人员能够致力于改善这种复杂性。我们已提请他们注意这一点。
| 归档时间: |
|
| 查看次数: |
778 次 |
| 最近记录: |