为什么我的类型不能与我的 prisma 模式一起使用? (MongoDB)

问题描述 投票:0回答:0

所以我有一个简单的模式并且它可以工作但是当我尝试用我的定义类型做任何事情时它不起作用。我这样做正确吗?

这是我的架构


generator client {
  provider      = "prisma-client-js"
  binaryTargets = ["native", "rhel-openssl-1.0.x"]
}

datasource db {
  provider = "mongodb"
  url      = env("DATABASE_URL")
}

model User {
  id         String     @id @default(auto()) @map("_id") @db.ObjectId
  email      String     @unique
  given_name String
  last_name  String
  loginInfo  loginStats
  role       Role       @default(User)
  Articles   Article[]
}

model Article {
  id        String   @id @default(auto()) @map("_id") @db.ObjectId
  createdAt DateTime @default(now())
  updatedAt DateTime @updatedAt
  published Boolean  @default(false)
  title     String
  author    User?    @relation(fields: [authorId], references: [id])
  authorId  String?  @db.ObjectId
}

type loginStats {
  createdAt DateTime @default(now())
  lastLogin DateTime
}

enum Role {
  User
  Admin
}

这是我创建用户的测试功能。

import { Request, Response } from "express";
import cognitoUserPoolHelper from "../authLogin";
import { PrismaClient } from "@prisma/client";

const prisma = new PrismaClient();

export const test = async (req: Request, res: Response) => {
    if (!prisma) {
        console.log(req);
    }
    const user = await prisma.user.create({
        data: {
            email: "[email protected]",
            given_name: "Test",
            last_name: "Test",
            loginInfo: {
                set: {
                    createdAt: Date.now().toString(),
                    lastLogin: Date.now().toString(),
                },
            },
        },
    });
    console.log(user);

    res.json({
        msg: "Hello World",
    });
};

我在运行时遇到此错误。

Unknown arg `set` in data.loginInfo.set for type loginStatsCreateInput. Did you mean `select`?
Argument lastLogin for data.loginInfo.lastLogin is missing.

我已经生成了棱镜模式,所以我至少可以排除这种情况。

有人知道吗?

mongodb express serverless-framework prisma
© www.soinside.com 2019 - 2024. All rights reserved.