2015-04-03 35 views
0

每個人都有一個類別。我想創建一個篩選器,以便我可以選擇一個類別並查看該類別中的所有人員。目前,當我選擇一個類別時,它應該在搜索名稱時搜索類別的ID號。這裏的URL http://localhost:3000/admin/people?utf8=%E2%9C%93&q%5Bcategory_id_in%5D%5B%5D= &提交=過濾&爲了= id_descActiveAdmin自定義資源檢索 - 按ID搜索時它應該是名稱

但應http://localhost:3000/admin/people?utf8=%E2%9C%93&q%5Bcategory_id_in%5D%5B%5D=[類別這裏名稱] &提交=過濾&爲了= id_desc

在管理/ person.rb

filter :category_id, as: :select, collection: proc { Category.all.map } 

這是related answer,我沒有成功嘗試t o在這裏適用,但不起作用。任何幫助深表感謝,感謝

回答

1

如果您wan't通過category屬性篩選Person對象,做這樣的事情:

filter :category, as: :select, collection: -> { Person.pluck(:category).uniq } 

Person.pluck(:category).uniq將返回uniq的類別列表以供選擇。


如果#pluck不會工作,去:Person.all.map(&:category).uniq

+0

感謝那些沒有的伎倆! – ace973 2015-04-03 21:19:41