4

gem メタサーチを使用して、いくつかのソート機能を提供しています。ページのデフォルトは のようなものですcreated_at ASCが、 にしたいのですがcreated_at DESC、MetaSearch の並べ替え機能を上書きするため、明示的に述べることができません。

def index
  @search = Photo.search(params[:search])
end

これを達成する方法について何か考えはありますか?

4

3 に答える 3

9

私は同じ問題を抱えていて、コントローラーでこのようにしてしまいました

search = {"meta_sort" => "created_at.desc"}.merge(params[:search] || {})
@search = Photo.search(search)

デフォルトのソート順はcreated_at DESCですが、paramsで新しいソート順を受け取ると上書きされます。私にはうまくいくようです。

于 2011-12-14T11:18:11.693 に答える
2

このアプローチを試してください。わたしにはできる:

def index
  @search = Photo.search(params[:search])
  @photos = @search.order("created_at desc")
end
于 2011-10-27T04:06:13.230 に答える
0

@search = Photo.search(params[:search])

@search.meta_sort = 'your_column.desc'

于 2011-11-22T05:02:50.027 に答える