Как получить информацию о строке моей таблицы без идентификатора? - PullRequest
0 голосов
/ 23 июня 2019

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

Например, если я попробую:

await API.graphql(graphqlOperation(getVideo, { id: ???? }))

Я понятия не имею, что такое мой «идентификатор». Очевидно, что после создания записи создается уникальный идентификатор, но у меня нет возможности узнать это, если я не перейду к моей консоли AWS.

Или как я могу получить этот идентификатор в качестве ответа при создании записи?

Я создал свой собственный (как это было в DynamodB, SortKey) с именем 'myId' при создании записи, которую я знаю. Мне нужно использовать этот «myId» для получения информации из моей таблицы. Как мне использовать это, чтобы получить информацию о моей записи в таблице?

1 Ответ

3 голосов
/ 23 июня 2019

Я полагаю, что вы все равно должны использовать реальное id вместо myId для получения информации о вновь созданном элементе.

Вы можете легко получить реальное id без необходимости посещать консоль aws, используя операцию createVideo graphql.

const createdVideo = await API.graphql(graphqlOperation(mutations.createVideo));
const videoId = createdVideo.data.createVideo.id;

Также операция listVideos graphql может перечислять все идентификаторы.

const allVideos = await API.graphql(graphqlOperation(queries.listVideos));
const videoIds = allVideos.data.listVideos.items.map(video => video.id);
...