switch db to mongodb, add new model for resources
This commit is contained in:
parent
a4162454ff
commit
8c8f387516
@ -1,56 +0,0 @@
|
||||
-- CreateTable
|
||||
CREATE TABLE "Account" (
|
||||
"id" TEXT NOT NULL PRIMARY KEY,
|
||||
"userId" TEXT NOT NULL,
|
||||
"type" TEXT NOT NULL,
|
||||
"provider" TEXT NOT NULL,
|
||||
"providerAccountId" TEXT NOT NULL,
|
||||
"refresh_token" TEXT,
|
||||
"access_token" TEXT,
|
||||
"expires_at" INTEGER,
|
||||
"token_type" TEXT,
|
||||
"scope" TEXT,
|
||||
"id_token" TEXT,
|
||||
"session_state" TEXT,
|
||||
CONSTRAINT "Account_userId_fkey" FOREIGN KEY ("userId") REFERENCES "User" ("id") ON DELETE CASCADE ON UPDATE CASCADE
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "Session" (
|
||||
"id" TEXT NOT NULL PRIMARY KEY,
|
||||
"sessionToken" TEXT NOT NULL,
|
||||
"userId" TEXT NOT NULL,
|
||||
"expires" DATETIME NOT NULL,
|
||||
CONSTRAINT "Session_userId_fkey" FOREIGN KEY ("userId") REFERENCES "User" ("id") ON DELETE CASCADE ON UPDATE CASCADE
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "User" (
|
||||
"id" TEXT NOT NULL PRIMARY KEY,
|
||||
"name" TEXT,
|
||||
"email" TEXT,
|
||||
"emailVerified" DATETIME,
|
||||
"image" TEXT
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "VerificationToken" (
|
||||
"identifier" TEXT NOT NULL,
|
||||
"token" TEXT NOT NULL,
|
||||
"expires" DATETIME NOT NULL
|
||||
);
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "Account_provider_providerAccountId_key" ON "Account"("provider", "providerAccountId");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "Session_sessionToken_key" ON "Session"("sessionToken");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "User_email_key" ON "User"("email");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "VerificationToken_token_key" ON "VerificationToken"("token");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "VerificationToken_identifier_token_key" ON "VerificationToken"("identifier", "token");
|
@ -1,3 +0,0 @@
|
||||
# Please do not edit this file manually
|
||||
# It should be added in your version-control system (i.e. Git)
|
||||
provider = "sqlite"
|
@ -6,7 +6,7 @@ generator client {
|
||||
}
|
||||
|
||||
datasource db {
|
||||
provider = "sqlite"
|
||||
provider = "mongodb"
|
||||
// NOTE: When using postgresql, mysql or sqlserver, uncomment the @db.Text annotations in model Account below
|
||||
// Further reading:
|
||||
// https://next-auth.js.org/adapters/prisma#create-the-prisma-schema
|
||||
@ -14,10 +14,51 @@ datasource db {
|
||||
url = env("DATABASE_URL")
|
||||
}
|
||||
|
||||
enum Platform {
|
||||
APP_IOS
|
||||
APP_ANDROID
|
||||
WEBSITE
|
||||
PDF
|
||||
}
|
||||
|
||||
enum Skill {
|
||||
ENVIRONMENT
|
||||
PHONEMES
|
||||
WORDS
|
||||
SENTENCES
|
||||
DISCOURSE
|
||||
MUSIC
|
||||
BACKGROUND
|
||||
}
|
||||
|
||||
enum SkillLevel {
|
||||
BEGINNER
|
||||
INTERMEDIATE
|
||||
ADVANCED
|
||||
}
|
||||
|
||||
type RangeInput {
|
||||
min Int
|
||||
max Int
|
||||
}
|
||||
|
||||
model AuditoryResource {
|
||||
id String @id @default(auto()) @map("_id") @db.ObjectId
|
||||
icon String
|
||||
name String
|
||||
description String
|
||||
manufacturer String
|
||||
format Platform
|
||||
ages RangeInput
|
||||
skills Skill[]
|
||||
skill_level SkillLevel
|
||||
cost Float
|
||||
}
|
||||
|
||||
// Necessary for Next auth
|
||||
model Account {
|
||||
id String @id @default(cuid())
|
||||
userId String
|
||||
id String @id @default(auto()) @map("_id") @db.ObjectId
|
||||
userId String @db.ObjectId
|
||||
type String
|
||||
provider String
|
||||
providerAccountId String
|
||||
@ -34,15 +75,15 @@ model Account {
|
||||
}
|
||||
|
||||
model Session {
|
||||
id String @id @default(cuid())
|
||||
id String @id @default(auto()) @map("_id") @db.ObjectId
|
||||
sessionToken String @unique
|
||||
userId String
|
||||
userId String @db.ObjectId
|
||||
expires DateTime
|
||||
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
||||
}
|
||||
|
||||
model User {
|
||||
id String @id @default(cuid())
|
||||
id String @id @default(auto()) @map("_id") @db.ObjectId
|
||||
name String?
|
||||
email String? @unique
|
||||
emailVerified DateTime?
|
||||
@ -52,6 +93,7 @@ model User {
|
||||
}
|
||||
|
||||
model VerificationToken {
|
||||
id String @id @default(auto()) @map("_id") @db.ObjectId
|
||||
identifier String
|
||||
token String @unique
|
||||
expires DateTime
|
||||
|
Loading…
x
Reference in New Issue
Block a user