2014-01-17 36 views
-1

我在表格中创建图像列表(创建表格ID,名称,序列)。我想按照一定的顺序排列对象。如何按特定顺序排列对象

例如

1, "rose", 1 
2, "jasmine", 2 
3, "lilly", 3 

如果我在“玫瑰”前移至“礼”,程序将如下

1, "rose", 2 
2, "jasmine", 3 
3, "lilly", 1 

有没有办法通过一个宝石自动实现这一点,因为我不希望通过自己编写更新代码来更新表中的所有序列值。

+0

将lilly设置为序列0?或者使用序号更大的数字100,200,300,因此可以在它们之间放置项目:) – aconrad

+0

我建议在整理顺序中使用Floats而不是整数 - 这样,您总是可以在任何两个其他元素之间移动任何给定的元素。需要移动1.0和2.0之间的东西?将其设置为1.5。移动另一个1.5和2.0之间?它可以是1.75,依此类推。这需要只更新一条记录,而不是全部(不能很好地扩展)。 – MrTheWalrus

回答

0

您可以使用ActsAsList宝石,当您更改记录的位置时,它会为您执行位置更新工作。