CSSA Portal 文档
BUCSSA 内部门户(portal.bucssa.org)— Django 单体、服务端渲染。核心能力包括 Google OAuth 登录、部门 RBAC、招新全流程、报销与教室预约、文件/Drive 集成,以及业务邮件通知。
读者
本套文档面向开发者与运维。终端用户教程不在本站复制第三份,见 现有用户文档。
本站点按 Diátaxis 框架组织。
文档导航
| 分类 | 说明 | 入口 |
|---|---|---|
| 概览 | 项目定位、角色与架构 | Introduction |
| 入门指南 | 本地安装与第一次跑通 | Installation |
| 用户指南 | 已有使用者文档索引 | 现有用户文档 |
| 参考 | URL、管理命令、权限 Mixin、邮件事件 | URL 与 Endpoint |
| 配置 | 环境变量与各服务配置 | Environment Variables |
| 部署指南 | systemd + gunicorn + Nginx | Production Deployment |
| 开发者指南 | 代码架构、状态机、扩展点 | Project Structure |
| 故障排查 | 现象 → 原因 → 解决 | Common Errors |
| 常见问题 | FAQ | FAQ |
| 参与贡献 | 测试、迁移、PR | Development Setup |
快速链接
| 入口 | 路径 | 角色 |
|---|---|---|
| 首页 | / | 公开 |
| Google 登录 | /accounts/login/ | 所有登录用户 |
| 用户中心 | /user/ | 部员 / 申请人 |
| 部长面板 | /chair/ | chair / admin |
| Portal 管理 | /admin/ | 全局 admin |
| Django Admin | /manage/ | Django staff |
| 用户设置 | /accounts/settings/ | 已登录 |
本地开发默认 http://127.0.0.1:8000。生产域名 https://portal.bucssa.org。
技术栈
Python 3.11+(CI 使用 3.12)· Django 4.2–6 · django-allauth · PostgreSQL · gunicorn · WhiteNoise · django-tailwind · Resend SMTP · Cloudflare R2(可选)· SFTPGo(可选)· Zoom S2S OAuth(可选)
完整列表见 Tech Stack。
上游与参考
本文档描述部内部署与业务逻辑;框架 API、OAuth、对象存储细节请查上游官方文档。
| 项目 | 官方文档 | 源码 |
|---|---|---|
| Django | docs.djangoproject.com | django/django |
| django-allauth | docs.allauth.org | pennersr/django-allauth |
| gunicorn | docs.gunicorn.org | benoitc/gunicorn |
| WhiteNoise | whitenoise.readthedocs.io | evansd/whitenoise |
| django-storages | django-storages.readthedocs.io | jschneier/django-storages |
| Resend SMTP | resend.com/docs | — |
| Zoom S2S OAuth | developers.zoom.us | — |
应用源码仓库:Thresh514/CSSAPortal。