简易签到系统:提供基于 HTTP 的签到表单、管理页面与导出 CSV 功能,适合教室点名与记录。
Project description
项目说明
简要说明项目用途:一个用于签到的轻量服务,提供前端签到页面和管理员页面,用于管理名单、保存签到记录(CSV)与重置数据。
安装方法
pip install ciit-checkin
运行方法
- 创建工作目录,比如
/opt/checkin - 在工作目录下创建配置文件,比如
room_info.yaml(参考config_example里的格式)
classrooms:
- id: "1056"
room_number: "1056"
row: 6
column: 8
- id: "1058"
room_number: "1058"
row: 4
column: 12
-
启动服务:
- 直接运行脚本:
checkin -c room_info.yaml --port 8000
- 或者安装成service.
- 直接运行脚本:
-
默认访问地址(按实际日志或配置调整):
配置说明
- 工作目录:服务以启动时的当前工作目录为基准读取/写入文件。建议从项目根目录启动。
- 配置文件(示例路径,可根据代码调整):
- data/name.txt — 名单
- data/checkins.csv — 签到记录(CSV)
- data/room_info.txt — 房间或活动相关配置
文件位置与格式
-
data/name.txt
- 路径示例:./data/name.txt
- 格式:UTF-8,逐行一个姓名或记录。示例:
张三 李四 王五 - 如需额外字段(例如 id 或工号),可采用逗号分隔:
name,id(需与代码解析方式一致)。
-
data/checkins.csv
- 路径示例:./data/checkins.csv
- 推荐字段(CSV首行头部):timestamp,name,room,notes
- 示例内容:
timestamp,name,room,notes 2025-11-11T09:02:15,张三,RoomA,第一次签到 2025-11-11T09:10:40,李四,RoomB,
-
data/room_info.txt
- 路径示例:./data/room_info.txt
- 常见格式(选择与代码匹配的格式):
- CSV 格式(room_id,display_name,capacity):
RoomA,一号教室,30 RoomB,二号教室,25 - 或 key=value 风格:
RoomA.name=一号教室 RoomA.capacity=30 RoomB.name=二号教室 RoomB.capacity=25
- CSV 格式(room_id,display_name,capacity):
启动后常用操作
- 访问签到页面:在浏览器打开签到 URL,输入姓名或选择名单进行签到,界面操作通常会将记录追加到
data/checkins.csv。 - 访问管理页面:打开管理 URL,可查看/编辑名单、导出 CSV、或执行重置操作(具体按钮/功能与实现相关)。
- 保存操作:在管理页面点击“保存”时,名单应写入
data/name.txt,签到记录写入data/checkins.csv。确认服务器进程有写权限。 - 重置操作:管理页面“重置”通常会清空或重命名当天的 CSV。若无界面,手动操作可:
# 清空签到记录 > data/checkins.csv # 或备份再清空 mv data/checkins.csv data/checkins-$(date +%F).csv
示例 room_info.txt 片段
CSV 风格:
RoomA,主会场,100
RoomB,分会场1,40
RoomC,分会场2,40
key=value 风格:
RoomA.name=主会场
RoomA.capacity=100
RoomB.name=分会场1
RoomB.capacity=40
常见故障排查
- 页面无法访问
- 检查 server.py 是否在运行、控制台是否报错。
- 检查端口是否被占用或防火墙阻挡。
- 依赖缺失或导入错误
- 确认已安装 requirements.txt 中的包,使用正确的 Python 版本。
- 文件读写失败
- 检查 data 目录是否存在、服务器用户是否有读写权限。
- Windows 路径注意反斜杠和工作目录;以项目根目录启动服务。
- 中文/编码问题
- 确保所有文本文件使用 UTF-8 编码,避免 BOM 或其它编码导致解析错误。
- 名单/CSV 格式不生效
- 与代码中解析逻辑保持一致(是否期望逗号分隔、是否跳过空行、首行是否为头部)。
- 无法保存/重置
- 确认管理页面的按钮触发的 API 没有返回错误(检查浏览器开发者工具的网络请求和服务器日志)。
- 日志与调试
- 查看控制台日志以获取异常栈信息;可在开发环境开启更详细的日志级别。
如需将以上路径或字段名与代码严格对齐,请提供 server.py 或配置片段以便精确修改 README。
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
ciit_checkin-0.1.9.tar.gz
(21.5 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ciit_checkin-0.1.9.tar.gz.
File metadata
- Download URL: ciit_checkin-0.1.9.tar.gz
- Upload date:
- Size: 21.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1dd95dbb4b946fd2f4245a5328baaab6c6fc11f6976bf8757faf83c91032c7cd
|
|
| MD5 |
299d0d7b09d396331a6831b9963b4324
|
|
| BLAKE2b-256 |
6a2a4c9b485c87bf6e37d88a2532ad1c31149a2f1788eb7803b9bb23aeafc7dc
|
File details
Details for the file ciit_checkin-0.1.9-py3-none-any.whl.
File metadata
- Download URL: ciit_checkin-0.1.9-py3-none-any.whl
- Upload date:
- Size: 21.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
00978f7e79bfd18a19d918833dbc870712960c604cce37b9fafad6f53ec5f085
|
|
| MD5 |
cca70f5c0fc6b8b67243caa32e7db06d
|
|
| BLAKE2b-256 |
e6e36e50805bcb89fc926f1541be8b732e73c5cd61a287fefff8a16462d07c50
|