I'd like to add a custom search or filter method. Basically I want to be able to do a search or filter on a calculated column. if I were going to write it as a direct query, I would do something like:
MyModel.having(["SUM(payments.payment_amount) >= ?", 100.0)
and bonus points for being able to use a custom select like
MyModel.select(["SUM(payments.payment_amount) AS payment_amount, mymodels.*"])
I'm just having a bit of trouble figuring out either:
1 - if this is already a part of railsadmin
2 - what elements need to be monkey patched or changed to hook in a search attribute like this. Any suggestions?
Just getting pointed to where to look to hack around with this would be great...I admit the RailsAdmin code is a bit complicated for me.
I was thinking it would be simple to (at the very least) incorporate having query by patching `all` to recognize `having` as an option. (since all gets called to scope all other queries, not super difficult)
module RailsAdmin
module Adapters
module ActiveRecord
# monkey patch on RailsAdmin's ActiveRecord adapter to allow it to take in
# custom `having` parameters
def all_with_having(options = {}, scope = nil)
scope = all_without_having(options, scope)
scope.having(options[:having]) if options[:having]
end
alias_method_chain :all, :having
end
end
end
so the next step is just to figure out adapt RailsAdmin's already existing search methods to do this.
Any suggestions?
Best,
Jeff