首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >格式集合排序

格式集合排序
EN

Stack Overflow用户
提问于 2011-08-31 02:19:13
回答 1查看 634关注 0票数 0

我需要根据它们的状态对formtastic的集合进行排序,无论它们是否被选中。

我的设置如下所示

代码语言:javascript
复制
# user.rb
class User
  has_and_belongs_to_many :colours
end

代码语言:javascript
复制
# colour.rb
class Colour
  has_and_belongs_to_many :users

  scope :ordered_for, lambda { |user|
    all.sort_by { |s| include? user ? 1 : 0 }
  }
end

代码语言:javascript
复制
# _form.html.haml
= semantic_form_for(@user) do |f|
  = f.input :colours, :as => :check_boxes, :collection => Colour.ordered_for(current_user)

ordered_for返回一个良好排序的数组。事实上,formtastic后来破坏了这个顺序,并按id对颜色进行排序。

什么是抑制这种行为的好方法?有没有更聪明的方法来实现按选择排序?

提前感谢!

EN

回答 1

Stack Overflow用户

发布于 2011-08-31 03:05:47

请尝试:

代码语言:javascript
复制
Colour.ordered_for(current_user).all
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7247869

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档