Резолвер AppSync DynamoDB для фильтрации вариантов использования - PullRequest
0 голосов
/ 06 сентября 2018

Я работаю над приложением, которое позволяет пользователям загружать ресурсы в Интернет.

Я борюсь с тем, как написать распознаватель для извлечения ресурсов, опубликованных конкретным пользователем.

У меня есть 3 таблицы DynamoDB

  • UserTable -> коллекция для пользователя
  • PostTable -> коллекция ресурсов
  • PostUserTable -> коллекция для хранения отношений между пользователем и почтой

В традиционной RDBS это будет сделано путем объединения двух таблиц (UserTable и PostTable) с использованием PostUserTable. Хотя DynamoDB или любая другая база данных NoSQL позволяет нам иметь более гибкий способ хранения данных, я ожидаю (надеюсь), что каждый пользователь имеет много ресурсов в конце дня, поэтому я решил спроектировать таблицы так же, как RDMS.

Но я не уверен, как вы можете написать преобразователь для фильтрации сообщений только по конкретному пользователю? У меня есть запрос graphql с именем getMyPosts, и я хочу, чтобы он возвращал сообщения, загруженные мной.

1 Ответ

0 голосов
/ 07 сентября 2018

Если вы перейдете в консоль AppSync и нажмете «Прикрепить» в поле, чтобы добавить распознаватель, в правом верхнем углу каждого редактора шаблонов распознавателя появится раскрывающийся список, в котором есть несколько прокомментированных примеров того, как создать распознаватель. шаблоны для DynamoDB. Это хорошее место для начала и имеет несколько примеров фильтров и многое другое. Подробнее о полном синтаксисе фильтра DynamoDB вы можете прочитать здесь: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Query.html#Query.FilterExpression.

...