---
# System prepended metadata

title: 資料庫欄位

---

# 資料庫欄位
**teachers**
- `id`
- `username`
- `password`
- `name`

**students**
- `id`
- `username`
    - 額外功能:學生不可更改(待討論)
- `password`
- `class`
- `group`
    - 待討論

**classes**
- `id`
- `name`
- `teacher`
- `weekday`
- `semester`
- `archive`

**groups**
- `id`
- `name`
- 
**class_sections** (課程每週資訊)
- `id`
- `class`
- `sequences`
- `name`
- `content`
    - ` [本週小考](quiz.pdf)` (教師上傳文件時，可以指定文件標題(`teacher_files.name`)，系統依據標題自動插入成 Markdown)
- `start_date`
- `end_date`
- `LLM_summary`
- `system_prompt`
- `publish_date`

**LLM**
- `id`
- `api_key`
- `teacher`
- `expire_date`

**teacher_files**
- `id`
- `class`
- `checksum`
- `name`
- `path`
- `teacher`

**student_files**
- `id`
- `class`
- `checksum`
- `student`
- `path`

**announcements**
- `id`
- `class`
- `title`
- `content`
- `visibility`
- `start_date`
- `end_date`
- `publish_date`

### 其他功能
- 讓教師在後台綁定 Google 帳號讓未來做 OAuth 登入(一開始無法使用 Google 登入)
- 安全性功能
    - `last_login_ip`

- 每週課程資訊/公告可以直接插入檔案(在 Markdown 中引用檔案)
    - 需要防止 LFI
- 老師在上傳文件時可以用之前傳過的檔案或者是另外新增文件