Rails 3.1,ActiveAdmin 0.3.4。ActiveAdmin,多態關聯和自定義篩選器
我的問題有點類似於this one,但在數據建模方面我認爲它有自己的反應。型號:
class CheckoutRequest < ActiveRecord::Base
has_one :request_common_data, :as => :requestable, :dependent => :destroy
end
class RequestCommonData < ActiveRecord::Base
belongs_to :requestable, :polymorphic => true
end
的RequestCommonData
模型具有completed
場(布爾),我希望能在ActiveAdmin的CheckoutRequest
索引頁進行過濾。我嘗試了幾種不同的方法無效,其中包括:
filter :completed, :collection => proc { CheckoutRequest.all.map { |cr| cr.request_common_data.completed }.uniq }
這導致不顯示過濾器。添加:as => :select
到線,如下所示:
filter :completed, :as => :select, :collection => proc { CheckoutRequest.all.map { |cr| cr.request_common_data.completed }.uniq }
導致以下整合檢索錯誤消息:
undefined method `completed_eq' for #<MetaSearch::Searches::CheckoutRequest:0x007fa4d8faa558>
即相同PROC在控制檯返回[true, false]
。
任何建議都會非常受歡迎。謝謝!
感謝您的回答!我會看看,看看這是否適合我。如果是這樣,我會將其標記爲正確的答案。 – justinbach 2012-01-27 14:06:33
謝謝!這對我很好! – 2012-07-12 19:18:15