Как отфильтровать результаты graphql, где ключ сортировки находится в массиве строк - PullRequest
0 голосов
/ 09 мая 2019

Приложение: AWS AppSync База данных: DynamoDB Auth: Cognito

Ключ раздела: идентификатор Ключ сортировки: Id

Цель: вернуть коллекцию записей, в которых ключ сортировки соответствует одному из значений в массиве строк.

Ключ разделения и ключ сортировки используются для организации родительских / дочерних отношений между контентом. Корневые записи имеют общий ключ раздела, который позволяет мне легко находить корневые записи. Пример:

PK: root SK: id0001

PK: root SK: id0002

PK: id0001 SK: id0003

Очевидно, есть и другие свойства, но это демонстрирует, как я могу быстро запрашивать корневые записи (что-либо с PK root) или любых потомков определенной родительской записи (PK = родительский идентификатор).

Я хочу передать следующий массив: ["id0001", "id0002"] ... и запросить все корневые записи, где SK содержит одно из значений массива.

1) Я пытался использовать в выражениях запроса содержимое, которое выдает ошибку. Видимо, содержимое может использоваться только в фильтрах. 2) Я попытался переместить логику содержимого в фильтр, который выдает ошибку. Очевидно, я не могу фильтровать ключи сортировки внутри фильтра.

Любая помощь очень ценится.

...