Amazon dynamodb AWS放大+;Appsync-是否可以使用@connection transform级联删除相关数据?

Amazon dynamodb AWS放大+;Appsync-是否可以使用@connection transform级联删除相关数据?,amazon-dynamodb,graphql,aws-appsync,aws-amplify,Amazon Dynamodb,Graphql,Aws Appsync,Aws Amplify,我正在开发一个web应用程序,使用AWS Amplify和AppSync将我的数据读写到DynamoDB表中。使用,使用@connection转换很容易在数据类型之间建立连接。我想知道是否有可能以简化或半自动化的方式删除相关数据 假设一个简单的博客示例,其中一个用户有一个博客,其中有帖子,而帖子又有其他用户拥有的评论。如果一篇文章被删除,我想删除与该文章相关的评论。如果用户被删除,我想删除他们的博客、帖子和与这些帖子相关的评论,以及用户在其他帖子上留下的任何评论。该示例的设计原因是,可能希望以某

我正在开发一个web应用程序,使用AWS Amplify和AppSync将我的数据读写到DynamoDB表中。使用,使用
@connection
转换很容易在数据类型之间建立连接。我想知道是否有可能以简化或半自动化的方式删除相关数据

假设一个简单的博客示例,其中一个用户有一个博客,其中有帖子,而帖子又有其他用户拥有的评论。如果一篇文章被删除,我想删除与该文章相关的评论。如果用户被删除,我想删除他们的博客、帖子和与这些帖子相关的评论,以及用户在其他帖子上留下的任何评论。该示例的设计原因是,可能希望以某种形式维护其中一些数据。然而,在某些情况下,这种行为正是我想要的

在过去与Prisma合作时,我使用他们的指令建立了类似于使用Amplify的
@connection
的关系。 然而,如果我想要级联删除,我会写一些大致如下的内容:

type Post {
id: ID! @unique
  title: String!
  body: String!
  owner: ID!
  comments: [Comment!] @relation(name: "PostComments",
onDelete: CASCADE)
}
我可以使用并将
onDelete
参数设置为
CASCADE
set\u NULL
,具体取决于我想要如何处理它


有没有办法通过放大来做类似的事情?当然,我可以编写一组VTL或Lambda解析器来处理每种情况,但我想首先检查是否有一种更快/更简单的方法来实现这一点。

Amplify本机还不支持这一点。正如您所说,您可以使用管道解析器和一些VTL复制此行为,然后通过Amplify CLI或自行部署。有计划允许您编写自己的转换器,将这样的可复制逻辑编码为解析器(请参阅),也有计划为所有Amplify CLI项目开发管道解析器(请参阅)。

这是我从研究中收集到的信息。谢谢你的澄清!你能澄清一下你是如何通过VTLs做到这一点的吗?我现在也有同样的问题嘿,约翰斯通,很抱歉。我正在做的项目来了又去。老实说,我甚至不记得我是否最终让这种行为起作用了。这是我一直致力于探索这个堆栈的个人项目。在免费试用期结束后,我删除了我的AWS帐户,转而开发更多的移动应用程序。我记得VTL有点痛苦,因为我不熟悉它,所以非常希望我能用javascript写出来。我认为这需要: