Commit Graph
13 Commits
Author SHA1 Message Date
bwstudio e141e3528e fix(cookieManager): 迁移补齐 Cookie 管理菜单,修复部署后菜单缺失
菜单记录此前只在本地库手工 INSERT,未随迁移分发。
data/ 被 gitignore 排除,部署环境数据库为独立 volume,
导致线上只有代码和空表、看不到菜单。

新增幂等迁移:记录不存在则插入,open_type 为空则补 _iframe。
管理员走 SUPERADMIN 分支加载全部 enable 菜单,无需角色授权即可显示。
2026-09-10 14:14:37 +08:00
bwstudio 2848a9ad0b fix(plugins): 修复 Cookie 管理子页面表格不显示与侧栏异常
根因:admin_power 菜单表中「登录用户」「登录网站」两个叶子菜单的
open_type 为 NULL,被渲染成 menu-open-type="null",点击时 Pear Admin
不会以 iframe 方式把页面加载进内容区——表格永远不显示,且页面被弹到
独立窗口,表现为"侧栏父菜单点不开子菜单"。其它页面型菜单的 open_type
均为 _iframe。

处理:
- 新增迁移 b2c3d4e5f6a7,将这两行 open_type 修正为 _iframe(按 url 幂等匹配)
- 清理 cookie_user/main.html 中被外部工具注入的 data-page-node-id 噪声属性

验证:本地起服务 + Playwright 登录后点击菜单项,确认内容区生成 iframe、
表格正常渲染(含工具栏、默认工具栏刷新/筛选/打印/导出、新增按钮,空表显示
"暂无登录用户"),且 cookie 页打开时侧栏父菜单仍能展开子菜单。
2026-09-09 20:17:38 +08:00
bwstudio 3e8c490851 feat(plugins): Cookie 管理插件(账号/站点 + 刷新记录)
以插件方式新增 Cookie 管理模块,不改动 framework 业务逻辑。

数据层
- CookieUser / CookieSite 两个模型(applications/models/admin_cookie.py)
- 对应 ManageSchema(applications/schemas/admin_cookie.py)
- 模型与 schema 在 applications/{models,schemas}/__init__.py 中注册,便于 Alembic 跟踪
- 新增两个迁移脚本(cookie_site / cookie_user + cookie 站点表)

插件
- plugins/cookieManager/:入口 __init__.py + 三个视图(概览 / 账号 / 站点)
- 后台模板:cookie_user 与 cookie_site 各自的 main/add/edit
- 路由前缀 /system/cookie-user/*、/system/cookie-site/*
2026-09-09 19:17:41 +08:00
bwstudio 1a33648b9a feat(migrations): 新增 alembic 迁移(public_nav / nav_category / 友链 / 访问统计) 2026-09-06 21:34:39 +08:00
bwstudio be99b8a925 feat(data): 数据库搬到 data/ 目录 + SQLite WAL + 单卷绑定挂载
- config.py 新增 PEAR_DATA_DIR(默认 <项目根>/data),SQLite 库、Flask-Session
  统一收进 DATA_DIR;不设时本地开发行为不变
- applications/__init__.py 顶部先 load_dotenv,保证 .env 里的 PEAR_DATA_DIR
  在 config 导入时就生效
- extensions/init_sqlalchemy.py 接 SQLite connect 事件:WAL + synchronous=NORMAL
  + busy_timeout=30s(多 worker 写不再撞锁)
- config.py 注入 SQLALCHEMY_ENGINE_OPTIONS(pool_pre_ping + SQLite connect_args
  超时;MySQL 路径下自动跳过 connect_args 防止参数错误)
- 新增 alembic 迁移 a47a5d2a3f1b 建 site_nav_click(含 anon_id 字段),
  解决之前该表只由 db.create_all 建、不在迁移链里的隐患
- .gitignore / .dockerignore 加 data/ 排除规则(且把 migrations/ 从
  ignore 里重新放行 —— 否则新加的迁移进不了库)
- NAS Docker 部署全面重写:
  - compose 唯一绑定挂载 ./data:/app/data,宿主 File Station 看得见
  - start.sh 自检 data 目录 + 子目录;workers 默认改为 1 threads 8
    (SQLite 写串行,单进程最稳)
  - 新增 backup.sh:sqlite3 .backup 在线热备(确保 WAL 一致性)+ 压缩
    + 保留 14 天
  - Dockerfile 安装 sqlite3 客户端备用,建 /app/data 子目录并 chown
- docs/deployment-nas.md 重写数据持久化章节(路径表 + 热备命令 +
  恢复步骤 + 整库迁移 tar/untar 流程)
2026-09-06 19:43:28 +08:00
不胜舟andGitee 08b2249e45 删除文件 migrations 2023-04-06 08:11:54 +00:00
不胜舟 bced84f92d 修改数据库初始化逻辑,完善权限,废弃flaskenv 2023-04-06 16:09:49 +08:00
mkg e0738aa5b2 完成部门管理,增加.flaskenv配置,抽基本js和css作为引入模板 2021-06-01 17:54:13 +08:00
mkg 8f4054e576 分解models 2021-04-27 11:58:21 +08:00
mkg 2f0df0a700 增加数据字典 2021-04-16 14:08:13 +08:00
mkg b9301046da 更新layui,新增个人信息修改 2021-04-01 23:51:41 +08:00
mkg 3dcdf8e1a3 过滤查询,完善基础功能,解决unicode编码问题,增加磁盘监控对于docker容器的判断 2021-03-19 22:20:45 +08:00
mkg d2a2b35317 基本构建 2021-03-18 22:59:02 +08:00