我正在設計Active Admin gem中的基本文件管理器(資產模型)。每個資產HABTM組,反之亦然。Ruby on Rails Active Admin - 顯示HABTM的重複記錄
在我active_admin資產資源我有一個過濾器,我希望能夠 選擇多個組進行過濾,所以我說:
filter :groups_id, :as => :check_boxes, :collection => proc {Group.all}
所有組顯示爲複選框預期。但是,如果我有asset_1,asset_2和group_1分配給asset_1和asset_2,並且group_2分配給asset_2,則當I 按兩種角色過濾時,asset_2會自行列出兩次。
如何限制過濾器僅使用「獨特」或「獨特」資產進行返回?
我還有另外一個問題,就是過濾器在我的任何範圍內都不起作用。
只是給了一個漩渦,並重新啓動服務器導軌,仍然有同樣的問題。我爲Asset和Group模型添加了:uniq選項。 – professormeowingtons 2012-02-04 02:00:51
我不是故意指責,因爲這很有可能我在這裏做了一些愚蠢的簡單錯誤,但是這幾乎就像是ActiveAdmin中的一個錯誤?即使我只有1個資產,如果我將其分配給2個組,然後在過濾器側欄中勾選這些2+組的複選框,則1個資產將顯示2次以上。 請參閱:http://i.imgur.com/GbntK.png – professormeowingtons 2012-02-04 05:25:03
是的,我認爲這是與Active Admin中的HABTM關係有關的一個錯誤。該複選框在URL中追加查詢字符串參數'&q [groups_id_in] [] = 1&q [groups_id_in] [] = 2'。這似乎強制Assets.where(:group_id => 1)和Assets.where(:group_id => 2),因此多次返回相同的條目。 – professormeowingtons 2012-02-04 05:58:50