我在棱镜中有两个模型--一个 Package 模型和第二个变异模型,它们是一对多的关系
model Package {
id Int @id @default(autoincrement())
name String
title String
vocavive_user vocavive_user[]
variations Variation[]
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
}
model Variation {
id Int @id @default(autoincrement())
expiration Int
bdt Int
discount_bdt Int @default(00)
usd Int @default(00)
discount_usd Int @default(00)
status Boolean @default(false)
packages Package? @relation(fields: [package_id], references: [id], onDelete: Cascade)
package_id Int?
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
}
我可以在同时插入 Package 数据和变异数据时插入数据变异。
exports.createPackage = catchAsync(async (req, res) => {
const {
name,
title,
expiration,
bdt,
discount_bdt,
usd,
discount_usd,
status,
} = req.body;
const newPackage = await prisma.package.create({
data: {
name: name,
title: title,
variations: {
create: {
expiration,
bdt,
discount_bdt,
usd,
discount_usd,
status,
},
},
},
include: {
variations: true,
},
});
console.log(newPackage);
res.status(200).json(newPackage);
});
但在我的情况下,我只需要将值插入到变量表中..我尝试了以下操作
exports.createVariation = catchAsync(async (req, res) => {
const newVariation = await prisma.variation.create({
data: {
expiration: req.body.expiration,
bdt: req.body.bdt,
package_id: req.body.package_id,
},
});
res.status(200).json(`variation Created Successfully: ${newVariation}`);
});
但它告诉我
38导出。创建变化= catchAsync(async(req,res)=〉{39 const newVariation =等待棱镜。变化。创建(外键约束在字段上失败:在请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理器和日志请求处理器上的处理中的prisma.variation.create()
调用无效
我怎样才能解决这个问题?
1条答案
按热度按时间nzk0hqpo1#
该错误消息表明不存在具有您在
package_id
字段中提供的ID的包。如果不需要
package_id
字段,或者需要确保具有所传递的package_id值的包存在,则可以省略该字段。