哈基米记账系统新版部署排坑记录
记账系统今天新一版
今天继续改我的记账系统:
哈基米为你服务记账铺这次不是简单换个颜色,而是把几个用起来别扭的地方都整理了一遍。

这次主要改了什么
首先是名字和风格换了。
之前看起来更像普通记账仪表盘,现在整体改成了偏可爱的猫咪奶油风。页面背景、按钮、卡片都更软一点,顶部标题也单独做成了橘猫背毛色的膨胀立体字。
不过我后面又发现一个问题:标题效果不能影响所有文字,所以最后只保留在页面顶部那一句:
哈基米为你服务记账铺其他账单文字、按钮文字、统计文字都保持原来的普通样式。

登录页也调了一下
登录页之前比例有点奇怪,卡片太窄,标题太大,顶部猫猫图标还有点被挤出去。
这次把登录卡片调宽了一点,标题字号也做了自适应,主账号登录和朋友进入共享账本分开看起来舒服一些。

新增了多账本
我一开始想过用两个账号区分私人账本和多人账本,但这个办法确实不好用。
更合理的做法是:
一个账号里面可以有多个账本。
比如:
我的私人账本旅行多人喵测试家庭账本私人账本只自己看,多人账本可以给朋友用分享码和账本密码进入。

公共账本怎么用
现在公共账本的逻辑是这样:
- 我先登录自己的主账号
- 进入
设置 -> 账本管理 - 新建一个
多人共享账本 - 填账本名称、分享码、账本密码
- 切换进这个账本
- 点
上传本机到云端 - 朋友打开同一个网站
- 在登录页的
朋友进入共享账本里输入分享码和密码
这样朋友只能进入这个共享账本,看不到我的私人账本。

今天遇到的坑
最大的问题还是 Cloudflare 上传。
我明明已经绑定了 D1,变量名也是 DB,但是公共账本上传时一直提示失败。
后来看到真正的错误是:
Worker threw exceptionError 1101这个意思就是 Cloudflare 的 Worker 在执行上传的时候崩了,不是我在页面里点错了。
临时处理办法
为了避开旧 D1 表结构乱掉的问题,后面把公共账本的数据单独改成了一个更简单的云端表:
cloud_store公共账本不再去碰旧的 users、configs、bills、shared_books 那些表,尽量减少冲突。
如果后面还是上传失败,大概率就不是页面的问题,而是 D1 数据库本身被前面多次测试搞乱了。最省事的办法可能是重新建一个干净的 D1,然后把 Pages 的 DB 绑定到新数据库。
现在的理解
这个系统现在大概分成两种用法:
私人账本:自己日常记账共享账本:朋友一起记旅行、聚餐、活动账共享账本不是把我的账号密码给朋友,而是给朋友一个账本入口:
分享码 + 账本密码这样更合理,也更安全一点。
今天主要就是这些。虽然中间被 Cloudflare 的 1101 折腾了一阵,但整体上更符合实际需求及使用情况。
支持与分享
如果这篇文章对你有帮助,欢迎分享给更多人或赞助支持!
Mr.Yan