首页 > 解决方案 > 触发更多突变的 AppSync 突变

问题描述

我有两个表:帖子和用户

createPost突变解析器中,我为某些属性设置了一些默认值(想想 userId、createdAt 时间戳、isDeleted 标志等)。另外,我想增加用户的numPosts计数器。

这可以通过标准解析器实现吗?

如果没有,有什么更好的选择,为什么?

备选方案 1)在添加增加用户numPosts计数器的新 Post 记录时使用 DynamoDB Stream 并触发 lambda 函数。

备选方案 2)使用 lambda 解析器并将所有逻辑移到那里,而不是标准解析器。

标签: amazon-web-servicesaws-lambdaaws-appsync

解决方案


您可以使用 BatchPut 操作同时更新多个表。有关更多信息,请参阅Amazon DynamoDB 批量操作指南。

你需要有一个解析器

{
  "version" : "2018-05-29",
  "operation" : "BatchGetItem",
  "tables" : {
    "Posts": {
        ...data
    },
    "NumPosts":{
        ...data
    }
  }
}

推荐阅读