【发布时间】:2019-12-31 02:52:07
【问题描述】:
如果我有一个如下所示的架构,其中一个用户可以有许多图像,但我没有图像上的字段来指向用户。如何保存新图像并将其连接到用户?我想我会省略 Image Type 上的 User 字段,因为我没有理由根据图像 ID 查询用户。但我不知道如何使用生成的 prisma 客户端进行调用以保存。
type User {
id: ID! @id
name: String
images: [Image] @relation(onDelete: CASCADE)
}
type Image{
id: ID! @id
createdAt: DateTime! @createdAt
filename: String!
}
通常我的创建调用将创建与另一个表连接起来,如下所示,但我相信这段代码需要我的Image 类型上的user 字段。
context.prisma.createImage({
filename: "test",
user: { connect: { id: args.user.id } }
})
我是否正确地考虑了这一点?您是否应该始终在具有这种关系的两个表之间进行双向引用?
没有指向用户的链接的主要好处之一是我可以将图像表用于用户以外的其他事物。比如产品什么的。
【问题讨论】:
标签: database-design prisma-graphql nexus-prisma