У меня есть запись типа контента в Contentful с такими полями:
"fields": {
"title": "How It Works",
"slug": "how-it-works",
"countries": [
{
"sys": {
"type": "Link",
"linkType": "Entry",
"id": "3S5dbLRGjS2k8QSWqsKK86"
}
},
{
"sys": {
"type": "Link",
"linkType": "Entry",
"id": "wHfipcJS6WUSaKae0uOw8"
}
}
],
"content": [
{
"sys": {
"type": "Link",
"linkType": "Entry",
"id": "72R0oUMi3uUGMEa80kkSSA"
}
}
]
}
Я хотел бы запустить запрос, который будет возвращать записи только в том случае, если они содержат определенную страну.
Я поигрался с этим запросом:
https://cdn.contentful.com/spaces/aoeuaoeuao/entries?content_type=contentPage&fields.countries=3S5dbLRGjS2k8QSWqsKK86
Однако получите эту ошибку:
The equals operator cannot be used on fields.countries.en-AU because it has type Object.
Я играю с почтальоном, но буду использовать .NET API.
Можно ли искать объекты и фильтровать массивы, содержащие объекты?
Все еще изучаю API, поэтому я предполагаю, что это должно быть довольно просто.
Обновление:
Я посмотрел на запрос Contentful Web CMS, так как там эта функция возможна. Они используют такие параметры запроса:
filters.0.key=fields.countries.sys.id&filters.0.val=3S5dbLRGjS2k8QSWqsKK86
Однако это не работало в API доставки и могло быть только внутренним форматом запроса.