如果我有一个模型A有一个属性X和一个名为B的子模型,并带有一个属性Y,那么我如何通过Y和X来排序A的所有实例?Ruby On Rails:按子项排序属性
1
A
回答
3
我将使用小写字母来代替:
a_instances.sort_by{|a| [a.b.y, a.x]}
4
可以使用default_scope
通过关联下令所有的模型实例。你只要通过相关的型号名称为:includes
PARAM和调整您的订单PARAM:
default_scope :include => 'record', :order => 'records.attribute'
然而,default_scope
不值得推荐。一个清洁的方法是建立在你的父模型类方法,你可以从你的控制器拨打:
def self.all_ordered_by_child
includes(:records).order('records.attribute DESC')
end
你只需要更新调用所有记录从父模型的所有实例。
相关问题
- 1. Ruby on Rails,查看属性
- 2. Ruby on Rails,属性的属性总和
- 3. Ruby on Rails排序列表
- 4. Ruby on Rails按子属性订购父母模型
- 5. 按子属性排序
- 6. Ruby on Rails中的虚拟属性
- 7. Ruby on Rails的 - 虚拟属性
- 8. Ruby on rails新对象属性
- 9. Ruby on Rails的 - 的has_many属性验证
- 10. Ruby on Rails中的time属性问题
- 11. Ruby on Rails collection_select显示属性
- 12. Ruby on Rails的full_messages特定属性
- 13. 嵌套属性在Ruby on Rails的
- 14. Ruby on Rails嵌套属性2.3
- 15. rspec validates_presence_of多态属性ruby on rails
- 16. Rails + Ransack gem:按关联排序属性
- 17. Rails - 如何按关联属性排序
- 18. 在Ruby on Rails中按帖子分类
- 19. ruby on rails ajax fav按钮的帖子
- 20. HOWTO在Ruby on rails中按余额排列项目
- 21. Ruby on Rails:排序和突出显示
- 22. Ruby on Rails,before_filter和prepend_before_filter排序是?
- 23. Ruby on Rails:可排序表列错误
- 24. Ruby on Rails:如何排序collection_select
- 25. Ruby on Rails:排序对象集合
- 26. Ruby on Rails with JQuery可排序问题
- 27. 在Ruby on Rails中排序数组
- 28. ruby on rails中activemodel序列化程序的可选属性
- 29. Ruby On Rails用户排名
- 30. 如何使用链接/按钮更改列属性 - Ruby on Rails
谢谢,但无论如何创建一个默认范围,所以它会自动排序? – rhfannnn