如何设计支持人工排序的列表的数据库结构?

例如SegmentFalut的标签这个页面:http://segmentfault.com/tags
假设网站管理是可以手工安排各个标签的顺序的,那么数据库应该如何设计?修改顺序时的API请求应该如何设计?
繁花不似锦
浏览 727回答 2
2回答

慕标5832272

自己答一个我的想法。数据库中,每个标签上储存一个实数,从小到大地标识标签的顺序。例如第一个标签是-5,排在第一个;第二个是-2,第三个是0,第四个是4.查询的时候很好办,直接按这个字段排序即可。修改顺序的时候,请求的内容是类似于「将标签A置于B和C之间」这样的,然后后端把A的顺序设置为B+(C-B)/2.

跃然一笑

index+modify_time
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript