class Basepack::Forms::Factories::QueryRailsAdmin

Public Class Methods

new(view, form_class = Forms::Query, group_class = Groups::Base) click to toggle source
# File lib/basepack/forms/factories/query_rails_admin.rb, line 5
def initialize(view, form_class = Forms::Query, group_class = Groups::Base)
  super(:query, view, form_class, group_class)
end

Public Instance Methods

build_form(form) click to toggle source
# File lib/basepack/forms/factories/query_rails_admin.rb, line 9
def build_form(form)
  super(form)

  rans_assoc = form.resource_class.ransackable_associations(form.auth_object)
  rans_attrs = form.resource_class.ransackable_attributes(form.auth_object)

  form.fields.each do |f|
    if f.association?
      f.filterable = rans_assoc.include?(f.name.to_s)
    elsif f.virtual?
      #  f.filterable = false
    else
      f.filterable = rans_attrs.include?(f.name.to_s) if f.filterable?
    end
  end

  form
end