4

default_scopeを、ブール値のimportant = trueショーで最初に表示され、すべてcreated_atdescで並べ替えられるように並べ替えようとしています。

だから、私は次のコードを持っています:

default_scope order_by(:important => :desc, :created_at => :desc)

ただし、importantフィールドの順序は無視されているようです。

どうすればそれを機能させることができますか?

前もって感謝します


編集:

順序パラメータの順序をシフトするだけで、機能します。

default_scope order_by(:created_at => :desc, :important => :desc)

とても簡単です。

4

1 に答える 1

2

これは、レールで 2 つの列をソートする方法の例です (おそらく、要件に合わせて少し変更する必要があるかもしれません)。

<Model>.all(:order => 'important, created_at')

HTH

于 2012-11-02T15:05:11.977 に答える