拖拽重排序后怎么插入数据库?

是一个文章分页,比如十页,按序号就是1-10;1页存一条数据,但是任意拖拽后我怎么在数据库排序??
每个分页的拖拽修改内容都是实时保存数据库的,

我现在想法就是两种,一种是全部存本地,等它提交了全部分页post过去,省事,但是每个分页不能实时存到数据库

另一种就是把重排序后的文章序号拿去数据库修改对应的序号,12345;那么3移到12之间就是13245;但是每次拖拽排序岂不是用对应修改很多条数据,那用户瞎几把乱拖,每次岂不是要修改很多次??求更好的方法

阅读 6.7k
2 个回答

可以给每条数据加个order冗余字段,float类型的。对于第1,2,3,4,5条数据,每条插入时order值为100,200,300,400,500.现在要把第4条数移到1,2之间,那就用1,2的order值之和除以2作为第4条数据新的order值,即第4条移动的数据新order值为150。这样也不需要修改其他数据的order值。

新手上路,请多包涵

需要注意的事项:
1、由于要找到上下两个ID,在前后端分离时,需要注意分布的问题。
2、拖到第一位和最后一位的处理方式

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题