[英]ActiveAdmin create a custom filter based on getter
我有一個帶過濾器的ActiveAdmin頁面。 我想基於getter(在資源上定義的方法,而不是ActiveRecord屬性)設置自定義過濾器。
class House
def is_enchanted?
# Ask to witches and ghosts...
end
end
這是ActiveAdmin資源:
ActiveAdmin.register House do
filter :is_enchanted?
end
上面的代碼引發了以下異常:
undefined method `is_enchanted?_eq' for #<Ransack::Search:0xc188178>
你可以使用范圍
車型/ house.rb
class House
scope :is_enchanted?,
#where(....)
end
管理員/ house.rb
ActiveAdmin.register House do
scope :is_enchanted?
end
您可以創建名為“ransackers”的自定義Ransack搜索方法。 沒有任何官方文檔,所以你需要在GitHub上的Ransack問題跟蹤器上進行一些搜索,以便進行類似的討論: https : //github.com/activerecord-hackery/ransack/issues/36
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.