【发布时间】:2023-02-09 17:23:09
【问题描述】:
我的 schema.prisma 文件中有这两个型号:
model User {
id String @id @default(uuid()) @db.Uuid
firstName String @map("first_name") @db.VarChar(40)
lastName String @map("last_name") @db.VarChar(40)
email String @unique @db.Citext
phone String @db.VarChar(60)
dialCode String @map("dial_code") @db.VarChar(5)
password String @db.VarChar(500)
twoFactorSecret String @db.VarChar(300)
roleId String @map("role_id") @db.Uuid
role Role @relation(fields: [roleId], references: [id])
customPermissions UserCustomPermission[]
updatedAt DateTime @default(now()) @updatedAt @map("updated_at") @db.Timestamptz(6)
createdAt DateTime @default(now()) @map("created_at") @db.Timestamptz(6)
@@unique([dialCode, phone], map: "phone_number_unique")
@@map("user")
UserAction UserAction[]
}
model UserAction {
id String @id @default(uuid()) @db.Uuid
userId String @map("user_id") @db.Uuid
method String @db.VarChar(120)
url String @db.VarChar(120)
userAgent String @db.VarChar(120)
requestBody Json?
responseBody Json?
user User @relation(fields: [userId], references: [id])
updatedAt DateTime @default(now()) @updatedAt @map("updated_at") @db.Timestamptz(6)
createdAt DateTime @default(now()) @map("created_at") @db.Timestamptz(6)
}
它应该是一对多连接,但是当触发创建记录的函数时,我在终端中收到此警告:
async createRecord({userId, method, url, userAgent, requestBody, responseBody}) {
return this.prisma.userAction.create({
data: {userId, method, url, userAgent, requestBody, responseBody}
})
}
这个警告:
+ user: {
+ create?: UserCreateWithoutUserActionInput | UserUncheckedCreateWithoutUserActionInput,
+ connectOrCreate?: UserCreateOrConnectWithoutUserActionInput,
+ connect?: UserWhereUniqueInput
+ },
? id?: String,
? updatedAt?: DateTime,
? createdAt?: DateTime
}
}
Argument user for data.user is missing.
Note: Lines with + are required, lines with ? are optional.
实际上,一切似乎都很好,但我想知道如何解决这个问题。我猜,2 个表之间的连接创建不正确,但我以前从未使用过prisma,所以我真的不知道错误在哪里。
那么,我该如何解决这个问题?提前致谢!
【问题讨论】:
标签: javascript nestjs prisma