next.js 我得到未定义的值时,我试图让我的标签在棱镜?

dbf7pr2w  于 2023-11-18  发布在  其他
关注(0)|答案(1)|浏览(82)

你好,我正在用TanstackQuery学习NextJS+TypeScript+Prisma的CRUD,所以我试图渲染tag.name,但是当我试图获取它时,我得到了undefined error


的数据
这是我的主页,我获取所有数据并将其传递给我的<PostCard />

async function getPost() {
  const response = await db.post.findMany({
    select: {
      id: true,
      title: true,
      content: true,
    },
    orderBy: {
      createdAt: 'desc'
    }
  })

  return response
}

const Home = async () => {
  
  const posts = await getPost();

  return (
    <main>
      {posts.map(post => (
        <PostCard key={post.id} post={post} />
      ))}
    </main>
  );
};

字符串
这是我的明信片,我从我的主页上得到的 prop 。

import { Tag } from "@prisma/client";
interface PostCardProps {
  post: {
    id: string,
    title: string,
    content:string,
    tag: Tag

  }
}

const PostCard = ({post}:PostCardProps) => {

  const {title, content, tag} = post
  

  return (
    <div>
        <h2 className="card-title">{title}</h2>
        <p>{content}</p>
        <div className="card-actions justify-end">
            <Link href="/blog/1">
                Read more...
            </Link>
        </div>
      </div>
  );
};


这是我的Prisma.Schema,用于post和tags的关系,

model Tag {
  id   String @id @default(cuid())
  name String @db.VarChar(100)
  Post Post[]
}

model Post {
  id    String @id @default(cuid())
  title String @db.VarChar(225)
  content String

  tagId String
  Tag Tag @relation(fields: [tagId], references: [id], onDelete: Cascade)
}

j91ykkif

j91ykkif1#

好吧,我太坏了,哈哈,我现在明白了,在我的棱镜。我把图式

model Post {
  id    String @id @default(cuid())
  title String @db.VarChar(225)
  content String

  tagId String
  Tag Tag @relation(fields: [tagId], references: [id], onDelete: Cascade)
}

字符串
我改变这个。

Tag Tag @relation(fields: [tagId], references: [id], onDelete: Cascade)


tag Tag @relation(fields: [tagId], references: [id], onDelete: Cascade)


此外,我补充说。

tag: true


在我的GetPosts

相关问题