【问题标题】:How do i get my table's row information without an 'id'?如何在没有“id”的情况下获取表格的行信息?
【发布时间】:2019-06-23 16:58:54
【问题描述】:

我已经成功地能够使用 AppSync 添加新条目和更新信息。但是,当谈到“获取”信息时,我完全被难住了。

例如,如果我尝试:

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

我不知道我的“id”是什么。显然,一旦创建了条目,就会创建一个唯一的 id,但除非转到我的 AWS 控制台,否则我无法知道这一点。

或者我如何在创建条目时获取此 ID 作为响应?

在创建我知道的条目时,我创建了自己的(就像在 dynamodb、SortKey 中一样)名为“myId”。我需要使用这个“myId”来检索表中的信息。如何使用它来获取我的表条目信息?

【问题讨论】:

    标签: javascript reactjs amazon-dynamodb aws-amplify aws-appsync


    【解决方案1】:

    我相信您仍然应该使用真正的id 而不是myId 来获取有关新创建项目的信息。

    使用createVideo graphql 操作,无需访问aws控制台,即可轻松获取真实的id

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

    另外,listVideosgraphql 操作可以列出所有 id。

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

    【讨论】:

    • 谢谢!我认为使用“id”是我在无济于事后决定的。工作。如何将 listVideos 存储在 localArray[] 中?
    • const videos = allVideos.data.listVideos.items
    • 仅针对该视频列表的 id 是: const videos = allVideos.data.listVideos.items.id?
    • const videos = allVideos.data.listVideos.items.map(v => v.id);
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-30
    • 2012-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多