Robin
08/24/2021, 6:53 AMmodel Solve {
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
userId Int
challenge Challenge @relation(fields: [challengeId], references: [id], onDelete: Cascade)
challengeId Int
createdAt DateTime @default(now()) @map(name: "created_at")
@@id([userId, challengeId])
}
Ryan
08/24/2021, 7:36 AMreferentialActions
to previewFeatures
in your schema.prisma
?Robin
08/24/2021, 7:51 AMRobin
08/24/2021, 7:52 AMRobin
08/24/2021, 7:52 AMCREATE TABLE IF NOT EXISTS "Challenge" (
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
"title" TEXT NOT NULL,
"text" TEXT NOT NULL,
"solution" TEXT NOT NULL,
"points" INTEGER NOT NULL
);
CREATE TABLE IF NOT EXISTS "Solve" (
"userId" INTEGER NOT NULL,
"challengeId" INTEGER NOT NULL,
"created_at" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY ("userId", "challengeId"),
FOREIGN KEY ("userId") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY ("challengeId") REFERENCES "Challenge" ("id") ON DELETE CASCADE ON UPDATE CASCADE
);
Robin
08/24/2021, 7:53 AMawait prisma.user.delete({
where: {
id: session.userId as number,
},
});
Ryan
08/24/2021, 7:53 AM`await prisma.user.create({
data: {
name: 'user1',
solves: { create: { challenge: { create: { name: 'ch1' } } } },
},
})
await prisma.user.create({
data: {
name: 'user1',
solves: { create: { challenge: { connect: { id: 1 } } } },
},
})
await prisma.user.delete({ where: { id: 1 } })
Ryan
08/24/2021, 7:53 AMRyan
08/24/2021, 7:53 AMRobin
08/24/2021, 7:56 AMRobin
08/24/2021, 7:56 AMRobin
08/24/2021, 7:57 AMRyan
08/24/2021, 7:58 AMts-node
or nodemon
? If so, then it should pick up the changes.Robin
08/24/2021, 8:00 AM