如何使用主键作为外键插入 Prisma 2 1-1 记录

问题描述

刚接触 prisma。运行 prisma 2 并从现有应用程序的数据源导入。能够内省并生成客户端:

model FileData {
  id Int @id
  fileData Bytes?
  FileMeta FileMeta @relation(fields: [id],references: [id])
}

model FileMeta {
  id Int @id @default(autoincrement())
  title String? @db.VarChar(150)
  fileName String? @db.VarChar(150)
  fileType String? @db.VarChar(50)
  byteSize String? @db.VarChar(50)
  isThumb Boolean? @db.Bit(1)
  FileData FileData?
}

我如何将这些记录翻转?想不通。

当前尝试(未写入/填充 FileData):

let fileMetaFields = {
    id: thisDabil.FileMeta_Dabil_imageIdToFileMeta.id || undefined,title: thisDabil.FileMeta_Dabil_imageIdToFileMeta.title || null,fileName: thisDabil.FileMeta_Dabil_imageIdToFileMeta.fileName || null,fileType: thisDabil.FileMeta_Dabil_imageIdToFileMeta.fileType || null,byteSize: thisDabil.FileMeta_Dabil_imageIdToFileMeta.byteSize.toString() || null,isThumb: thisDabil.FileMeta_Dabil_imageIdToFileMeta.isThumb || null,}

let fileMeta;
    if (thisFileMeta.id) {
      fileMeta = await await prisma.fileMeta.upsert({
        where: { id: thisFileMeta.id },create: fileMetaFields,update: fileMetaFields,include: {
          FileData: true,}
      });
    } else {
      fileMeta = await prisma.fileMeta.create({
        data: fileMetaFields,}
      })
    }

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)