首页 > 解决方案 > 如何删除 AWS 放大中满足特定条件的所有项目?

问题描述

我正在使用 AWS amplify 开发一个 Web 应用程序。
我想使用如下查询删除满足特定条件的多个项目:

mutation delete {
  deletePostTag(condition: {title: {eq: "Hello"}}) {
    id
  }
}

但是,尝试在 AWS AppSync 控制台上运行上述查询后,它抱怨input缺少该字段,但不幸的是input只接受id.
amplify cli生成的解析器似乎不支持一次删除多个项目。
我必须实现自定义解析器吗?

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

解决方案


您可以批量删除多个项目。下面的示例并在此处阅读更多内容。

架构:

type Mutation {
    batchDelete(ids: [ID]): [Post]
}

询问:

mutation delete {
    batchDelete(ids:[1,2]){ id }
}

不是 100% 确定此处是否支持条件,但希望您可以对其进行测试。如果我怀疑它们不受支持,那么只需发出具有相同条件的查询来检索匹配的项目,然后将生成的项目键数组提供给 batchDelete。


推荐阅读