【问题标题】:rails scope order by atribute of parent按父属性的rails范围顺序
【发布时间】:2013-03-02 21:48:58
【问题描述】:

假设我有一个属于 :bar 的类 Foo。

Bar 有一个属性名。我想创建一个按 bar.name 订购 Foos 的范围。我如何使用范围来做到这一点?

喜欢, 范围 :by_name, order('')?

我对 Rails 很陌生,所以如果这个问题没有意义,我很抱歉。

【问题讨论】:

    标签: ruby-on-rails scope


    【解决方案1】:

    试试这个...

    scope :by_bar_name, order('bars.name').includes(:bar)
    

    【讨论】:

    • .joins(:bar) 代替包含也是一个选项
    【解决方案2】:

    或更少的内存密集型:

    scope :by_bar_name, joins(:bar).order('bars.name')

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-16
      • 2020-05-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多