Module: Fetcha::ClassMethods
- Defined in:
- lib/fetcha.rb
Instance Method Summary
collapse
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(name, *args, block) ⇒ Object
140
141
142
143
|
# File 'lib/fetcha.rb', line 140
def method_missing(name, *args, block)
raise ForbiddenError if name.match /.*_filter$/
super
end
|
Instance Method Details
#fetch(params = {}) ⇒ Object
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
# File 'lib/fetcha.rb', line 9
def fetch(params = {})
results = self.all
query_scope = params['scope']
filters = params['filter']
sorting = params['sort']
pages = params['page']
search = params['search']
results = process_scope(results, query_scope) if query_scope
results = process_filtering(results, filters) if filters
results = process_sorting(results, sorting) if sorting
results = (results, pages) if pages
results = process_search(results, search) if search
results
end
|