我现在使用 rails3.2.16+ruby1.9,使用了 acts_as_list 插件,只实现了点击按钮上移和下移的操作,一次只能移动一个位置。 这里涉及到三个 model,具体关系如下: 1、三个 model 分别为:vm, vm_temp 和 vdisk 2、三者关系为:
class Vm < ActiveRecord::Base
has_many :vdisks, order: :position
class VmTemp < ActiveRecord::Base
has_many :vdisks, order: :position
class Vdisk < ActiveRecord::Base
acts_as_list scope: [:vm_id, :vm_temp_id]
其中,vdisk 的 position 代表排序的序号,当然必须是属于同一个 vm 或 vm_temp
3、现在问题是:我想实现列表项拖拽排序的功能,本来 rails3.0 之前有一个 sortable_element 方法可以实现,但是 3.0 以后的版本移除了。我在网上看到有一些使用 jQuery 实现,但是我在担心不使用 acts_as_list,又如何对 vm_id 和 vm_temp_id 两个不同范围中的 vdisk 排序。
所以请教各位有没有比较好的方法实现