Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yunyoungsik/school-management
Next.js와 Tailwind를 이용하여 작업한 웹사이트입니다.
https://github.com/yunyoungsik/school-management
nextjs tailwindcss
Last synced: 6 days ago
JSON representation
Next.js와 Tailwind를 이용하여 작업한 웹사이트입니다.
- Host: GitHub
- URL: https://github.com/yunyoungsik/school-management
- Owner: yunyoungsik
- Created: 2024-08-20T06:30:20.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2024-10-17T14:57:12.000Z (29 days ago)
- Last Synced: 2024-10-19T21:36:29.005Z (27 days ago)
- Topics: nextjs, tailwindcss
- Language: TypeScript
- Homepage:
- Size: 278 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# School Management
[참고영상1](https://www.youtube.com/watch?v=myYlGLFxZas)
[참고영상2](https://youtu.be/6sfiAyKy8Jo?si=t6zCfN43vr0UDJOw)## 설치
```
npm i recharts
npm i react-calendar
npm i react-big-calendar moment
npm i @types/react-big-calendar
npm i react-hook-form zod @hookform/resolvers
```
```
npm i prisma
npx prisma init
```## PRISMA
### 1. `autoincrement()`
`autoincrement()`는 데이터베이스에서 숫자 필드가 **자동으로 증가**하도록 설정하는 기능입니다.
주로 **ID 필드**와 같은 Primary Key에 사용됩니다.#### 사용예시
```prisma
model Lesson {
id Int @id @default(autoincrement())
name String
}
```### 2. `@relation`
@relation은 두 모델 간의 **외래 키 관계(Foreign Key Relationship)**를 설정합니다.#### 사용예시
```prisma
model Lesson {
id Int @id @default(autoincrement())
name String
subjectId Int
subject Subject @relation(fields: [subjectId], references: [id])
}model Subject {
id Int @id @default(autoincrement())
name String
description String
}
```### 3. `enum`
enum(열거형)은 값의 선택지를 제한하는 데이터 타입입니다.
이런 유효한 값 목록을 미리 정의하여 사용자가 유효하지 않은 값을 입력하는 실수를 방지합니다.#### 사용예시
```prisma
enum UserSex {
MALE
FEMALE
}model Student {
id Int @id @default(autoincrement())
name String
sex UserSex
}
```