Rails3 Active Admin: как отображать только открытые записи о статусе при первом нажатии на тег «Отправления»? - PullRequest
3 голосов
/ 28 февраля 2012

Я использую ActiveAdmin. У меня есть список отправлений со статусом (в виде строки) открытых и закрытых. Когда пользователь нажимает на вкладку Отправления, я хочу отображать только Открытые отправления. Как я могу это сделать? Конечно, позже пользователь может выбрать просмотр закрытых отправлений с помощью фильтра. Но я хочу, чтобы по умолчанию изначально отображались только открытые поставки.

Ответы [ 2 ]

2 голосов
/ 11 марта 2012

Области применения в модели:

#app/models/shipments.rb
  scope :opened, where(:status => "Open")
  scope :closed, where(:status => "Closed")

области действия в ресурсе activeadmin, помеченные по умолчанию:

#app/admin/shipments.rb
  scope :opened, :default => :true
  scope :closed
2 голосов
/ 28 февраля 2012

Вероятно, лучшим способом будет создание областей в модели.АА автоматически получает ваши области и создает вкладки над таблицей в виде указателя.Не забудьте добавить области в файл app / admin / your-resource-name.rb.

#app/models/shipments.rb
  scope :opened, where(:status => "Open")
  scope :closed, where(:status => "Closed")

... и добавить области в файл ресурсов

#app/admin/shipments.rb
  scope :opened
  scope :closed

У меня нетвремя для тестирования, но оно должно работать.

ASCIIcast с простой областью действия: http://asciicasts.com/episodes/284-active-admin

...