yodhcn / kikoeru-express

kikoeru 后端,不再维护,请到https://github.com/umonaca/kikoeru-express 获取更新
GNU General Public License v3.0
113 stars 92 forks source link

所有新添加的作品的标题都会重复显示 #7

Closed ShadowLyin closed 3 years ago

ShadowLyin commented 4 years ago

本地环境:

Windows 10 专业版 2004

软件版本:

kikoeru-win-x64-v0.3.0,使用 PM2 启动

问题描述:

所有新添加的作品的标题都会重复显示一次,导致所有的标题都显得很长.

截图:

image

equals-chan commented 4 years ago

我也是...你不说我还没发现

shawncafu commented 3 years ago

我也是这个问题 环境是威联通的NAS

shawncafu commented 3 years ago

小白刚才百度下了一个能打开db.sqlite3的数据库,然后自己鼓捣了一下 用这个代码就能删除重复的标题了 update t_work set title=substr(title,1,(length(title)+3)/2)

ShadowLyin commented 3 years ago

小白刚才百度下了一个能打开db.sqlite3的数据库,然后自己鼓捣了一下 用这个代码就能删除重复的标题了 update t_work set title=substr(title,1,(length(title)+3)/2)

感谢指引,使用了 SQLiteSpy 操作成功了。

umonaca commented 3 years ago

已经提交PR。是基于master的,和0.3.0有些区别,不过都是改这样一行。

umonaca commented 3 years ago

小白刚才百度下了一个能打开db.sqlite3的数据库,然后自己鼓捣了一下 用这个代码就能删除重复的标题了 update t_work set title=substr(title,1,(length(title)+3)/2)

特别提醒,目前新增作品仍然会重复,并且这个SQL语句是对全体操作的。也就是说新增了以后临时解决方案是

update t_work set title=substr(title,1,(length(title)+3)/2) where id in (123456, 789012)

或者会node.js的话可以直接用我那个修复。不过,0.3.0要改的是54行而不是master的121行。

ShadowLyin commented 3 years ago

小白刚才百度下了一个能打开db.sqlite3的数据库,然后自己鼓捣了一下 用这个代码就能删除重复的标题了 update t_work set title=substr(title,1,(length(title)+3)/2)

特别提醒,目前新增作品仍然会重复,并且这个SQL语句是对全体操作的。也就是说新增了以后临时解决方案是

update t_work set title=substr(title,1,(length(title)+3)/2) where id in (123456, 789012)

或者会node.js的话可以直接用我那个修复。不过,0.3.0要改的是54行而不是master的121行。

目前改了这一行新添加的作品也正常了,感谢。

equals-chan commented 3 years ago

大家都是大佬.... 我发现substr会对所有项进行修改,导致已经正常的标题字数被删减。 实际上我发现,重复的标题之间有一个换行符,并且标题会重复2-3次,所以我用java写了个小工具,利用split("\n");将重复标题分割成一个长度为2或3的String[] ,然后取一个即可。

umonaca commented 3 years ago

修复版程序: https://github.com/umonaca/kikoeru-express/releases/tag/v0.3.1 直接解压,里面两个文件覆盖原版即可。基于0.3.0而非master,只改了这一处。

shawncafu commented 3 years ago

修复版程序: https://github.com/umonaca/kikoeru-express/releases/tag/v0.3.1 直接解压,里面两个文件覆盖原版即可。基于0.3.0而非master,只改了这一处。

大佬,我用的是docker版的,请问具体怎么操作修复呀

umonaca commented 3 years ago

修复版程序: https://github.com/umonaca/kikoeru-express/releases/tag/v0.3.1 直接解压,里面两个文件覆盖原版即可。基于0.3.0而非master,只改了这一处。

大佬,我用的是docker版的,请问具体怎么操作修复呀

先把相应的容器停掉,下载这个文件,修改volume下冒号左侧为你的存储位置,然后docker-compose up 或者

docker run --init -p 8888:8888 -v 你的存储:/usr/src/kikoeru/Folder/VoiceWork -v 你的数据库:/usr/src/kikoeru/sqlite -v 你的封面:/usr/src/kikoeru/covers -v 你的设置:/usr/src/kikoeru/config muveexu/kikoeru:v0.3.4

==== 更新 ==== 打包了docker image,放在release里面了。