【发布时间】:2014-01-17 06:25:47
【问题描述】:
我有一个表中的图像列表(创建表 ID、名称、序列)。我想按一定的顺序排列对象。
例如
1, "rose", 1
2, "jasmine", 2
3, "lilly", 3
如果我把“lilly”移到“rose”前面,顺序如下
1, "rose", 2
2, "jasmine", 3
3, "lilly", 1
有没有办法通过 gem 自动实现这一点,因为我不想通过自己编写更新代码来更新表中的所有序列值。
【问题讨论】:
-
将 lilly 设置为序列 0 ?或使用更大数字 100,200,300 的序列,以便在它们之间放置项目:)
-
我建议使用浮点数而不是整数进行排序 - 这样,您始终可以在任意两个元素之间移动任何给定元素。需要在 1.0 和 2.0 之间移动一些东西吗?将其设置为 1.5。在 1.5 和 2.0 之间移动另一个?它可以是 1.75,依此类推。这需要只更新一条记录,而不是全部更新(扩展性不是特别好)。
标签: mysql ruby-on-rails