帖子版本控制功能如何实现 --- 考考大家
骄傲青蛙 2013-05-23 11:24:39 ================
实例需求
================
假设, 当前我发的这个帖子, 每次编辑后都保存一个副本,
如果, 我对这个帖子编辑了六次, 那么, 系统则对这六次编辑的改动情况记录一下来。
以后, 我可以查看此帖的改动情况, 什么时候更改过, 那些地方改动过,
而且可以选择最适合的版本作为最终的帖子内容。
================
设计思路
================
数据结构
post (pid, content, changed_time, version_number, current_version_number)
实现过程
新发帖, 插入一条记录到post, version_number为1,current_version_number为0,
修改帖, 插入记录操作如上, 但version_number是编辑帖字段数值自增1, 且当前编辑的pid的current_version_number改为1
数据事例
1, text1 change1, yy-mm-dd, 1, 1
2, text1 change2, yy-mm-dd, 2, 1
3, text1 change3, yy-mm-dd, 3, 1
4, text2 change1, yy-mm-dd, 1, 1
5, text3 change1, yy-mm-dd, 1, 0
6, text1 change4, yy-mm-dd, 4, 0
7, text2 change2, yy-mm-dd, 2, 0
数据索取
就读current_version_number为0的记录
================
缺憾
================
就是 content 的内容太多重复。 想请教一下大家应该如何改进这功能 ?