Как установить значения по умолчанию для сортировки вымогателей?

Проще говоря, я просто хотел бы знать, есть ли способ установить значения по умолчанию для функции сортировки с помощью драгоценного камня Ransack? т.е.

В настоящее время у меня есть следующее при загрузке страницы:

empty_ransack

Но вместо этого я хотел бы иметь следующие значения по умолчанию при загрузке страницы:

искать с настройками по умолчанию

Можно ли это сделать с помощью правильной настройки Ransack Gem?

Заранее спасибо как всегда!

С уважением!


person jlstr    schedule 13.11.2012    source источник


Ответы (2)


Это работает для меня:

@search = Change.search(params[:q])
@search.sorts = 'updated_at desc' if @search.sorts.empty?

Примечание. Поначалу у меня были некоторые головные боли, когда у меня было desc в верхнем регистре — это просто не работает.

person Christopher Creutzig    schedule 12.02.2013

Вы также можете установить несколько сортировок по умолчанию, определив массив:

@search = Post.ransack(params[:q])  
@search.sorts = ['name asc', 'created_at desc'] if @search.sorts.empty?
@posts = @search.result.paginate(page: params[:page], per_page: 20)

https://github.com/activerecord-hackery/ransack/wiki/Сортировка-в-контроллере

person ToniTornado    schedule 08.01.2016