Module: Queryko::Able::ClassMethods
- Defined in:
- lib/queryko/able.rb
Instance Method Summary collapse
- #default_param(sym, value) ⇒ Object
- #feature(feature_name, filter, options = {}) ⇒ Object
- #inherited(subclass) ⇒ Object
Instance Method Details
#default_param(sym, value) ⇒ Object
28 29 30 |
# File 'lib/queryko/able.rb', line 28 def default_param(sym, value) self.default_params[sym] = value end |
#feature(feature_name, filter, options = {}) ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/queryko/able.rb', line 14 def feature(feature_name, filter, = {}) # returns the feature if it exists feat = self.features[feature_name.to_sym] ||= Queryko::Feature.new feature_name, self self.defined_filters[filter] ||= Array.new # creates a filter filt = feat.add_filter filter, self.defined_filters[filter].push(filt) # appends new field self.fields[filt.field.to_sym] ||= Array.new self.fields[filt.field.to_sym].push(filt) end |
#inherited(subclass) ⇒ Object
32 33 34 35 36 37 |
# File 'lib/queryko/able.rb', line 32 def inherited(subclass) subclass.defined_filters = self.defined_filters.clone || {} subclass.features = self.features.clone || {} subclass.fields = self.fields.clone || {} subclass.default_params = self.default_params.clone || {} end |