QQ对话持久化工具第一轮迭代
ben7th opened this issue · 3 comments
需要基于这个 gem 实现一个 QQ 对话持久化工具(用一个新的rails工程来做),这个工具可以通过web进行如下操作:
用户打开首页,点击【导入新对话】按钮,出现一个textarea,允许用户粘贴QQ对话到网页。
用户粘贴QQ对话并点击【保存】按钮后,通过这个 gem 解析对话记录,并把解析出来的两类对象:line 和 user,持久化保存到系统数据库中。每个对话保存后会新生成 n 个 line 和 user 对象。持久化到数据库之后,每个对象会具有ID,同时需要保持他们的关联关系。
QQ解析部署到 heroku 访问
https://serene-thicket-8391.herokuapp.com/
修改建议:
-
目前有两个对象 line 和 user. 为了让程序逻辑更清晰,再封装一个对象 chat_record (对话记录)
chat_record 和 line 是一对多关系。chat_record has_many :lines line belongs_to chat_record
-
用户打开首页时,列出数据库中所有已保存的 chat_record 对象;
-
首页上放置一个【导入新对话】按钮。点击这个按钮后,出现一个表单界面,上面有一个 textarea,允许用户粘贴 QQ 对话到网页。
-
系统无需用户选择是单人对话还是多人对话,后台应自动判断。用户粘贴 QQ 对话并点击保存后,如果解析成功,则生成一个 chat_record 记录,以及若干 line 和 user 记录。如果解析失败则什么都不生成(先解析,再持久化。不要导入一半然后失败)
-
在首页上点击 chat_record 对象时,打开一个页面,用一个表格列出每个 line 的用户,时间,正文,等信息。
-
点击表格里的用户时,打开一个页面,列出该用户在系统内所有的 line. 以 chat_record 划分。
3月25日:
BUG:
http://markdown.4ye.me/L5Burmgb
导入这段文本的时候,消息发送者名字会错误的解析成数字
BUG:
http://markdown.4ye.me/jegKJHcD
导入这段文本的时候,点击 convert 按钮会出现空白页
并且会出现导入一半的问题
以上 BUG 都需要 fix