queryfy 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +3 -0
- data/Gemfile +7 -5
- data/README.md +15 -3
- data/lib/queryfy/acts_as_queryfy.rb +9 -0
- data/lib/queryfy/core_ext.rb +3 -0
- data/lib/queryfy/queryfy_ext.rb +5 -0
- data/lib/queryfy/version.rb +1 -1
- data/lib/queryfy.rb +2 -4
- metadata +4 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1621b2220459fea7e19fa27f275fe16b98bd9f19
|
4
|
+
data.tar.gz: 352af1d4a2943ca33225cab60eeb693181c98e28
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 07f183a177ec38c678e539e6ef9dc8f7775c44eb5eb18bdc2ba0ca8bbdae6d1323cedf6787d5b520b67d45e46b8ed6bebb51293cb68b52373b07e0c1ad8e1237
|
7
|
+
data.tar.gz: ff5b817d584fe4014783c17334aaba2772799f81f3352301b3f2856d3e10b63570853c2cbec31a5a0297c83a53e65200d0bd71c26170788fb00a29298ed0a7dd
|
data/.travis.yml
CHANGED
data/Gemfile
CHANGED
@@ -6,10 +6,12 @@ gem 'sqlite3'
|
|
6
6
|
rails = ENV['RAILS'] || '~> 4.2.0'
|
7
7
|
gem 'rails', rails
|
8
8
|
|
9
|
-
|
10
|
-
gem 'pry
|
11
|
-
gem 'pry-
|
12
|
-
gem 'pry-
|
13
|
-
gem 'pry-
|
9
|
+
group :development do
|
10
|
+
gem 'pry'
|
11
|
+
gem 'pry-doc'
|
12
|
+
gem 'pry-nav'
|
13
|
+
gem 'pry-rescue'
|
14
|
+
gem 'pry-stack_explorer'
|
15
|
+
end
|
14
16
|
|
15
17
|
gemspec
|
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Queryfy
|
1
|
+
# Queryfy [![Build Status](https://travis-ci.org/Bonemind/Queryfy.svg?branch=master)](https://travis-ci.org/Bonemind/Queryfy) [![Dependency Status](https://gemnasium.com/Bonemind/Queryfy.svg)](https://gemnasium.com/Bonemind/Queryfy)
|
2
2
|
|
3
3
|
Queryfy is a gem that allows you to simply and easily paginate and filter activerecord models using queryparams.
|
4
4
|
The gem assumes you pass it a hash of queryparams which contain a filterstring in `filter`, and optionally `offset` and `limit` fields.
|
@@ -29,15 +29,27 @@ Or install it yourself as:
|
|
29
29
|
## Usage
|
30
30
|
|
31
31
|
### General
|
32
|
+
|
33
|
+
Register queryfy method everywhere
|
32
34
|
```
|
33
|
-
require 'queryfy'
|
35
|
+
require 'queryfy/core_ext'
|
34
36
|
|
35
37
|
class SomeModel
|
36
|
-
include Queryfy
|
37
38
|
end
|
38
39
|
|
39
40
|
SomeModel.queryfy(queryparams)
|
40
41
|
```
|
42
|
+
Register queryfy only on specified model
|
43
|
+
```
|
44
|
+
require 'queryfy/acts_as_queryfy'
|
45
|
+
|
46
|
+
class SomeModel
|
47
|
+
acts_as_queryfy
|
48
|
+
end
|
49
|
+
|
50
|
+
SomeModel.queryfy(queryparams)
|
51
|
+
```
|
52
|
+
|
41
53
|
|
42
54
|
The gem adds makes a `queryfy` method available to ActiveRecord::Base when included.
|
43
55
|
The queryfy method takes a hash in the following format:
|
data/lib/queryfy/version.rb
CHANGED
data/lib/queryfy.rb
CHANGED
@@ -98,10 +98,8 @@ module Queryfy
|
|
98
98
|
end
|
99
99
|
return ast
|
100
100
|
end
|
101
|
-
end
|
102
101
|
|
103
|
-
|
104
|
-
def self.queryfy(queryparams)
|
102
|
+
def self.from_queryparams(klass, queryparams)
|
105
103
|
filter = ''
|
106
104
|
offset = 0
|
107
105
|
limit = Queryfy::default_limit
|
@@ -112,6 +110,6 @@ class ActiveRecord::Base
|
|
112
110
|
elsif(queryparams.is_a?(String))
|
113
111
|
filter = queryparams
|
114
112
|
end
|
115
|
-
return Queryfy.build_query(
|
113
|
+
return Queryfy.build_query(klass, filter, limit, offset)
|
116
114
|
end
|
117
115
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: queryfy
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bonemind
|
@@ -76,9 +76,12 @@ files:
|
|
76
76
|
- bin/console
|
77
77
|
- bin/setup
|
78
78
|
- lib/queryfy.rb
|
79
|
+
- lib/queryfy/acts_as_queryfy.rb
|
79
80
|
- lib/queryfy/configuration.rb
|
81
|
+
- lib/queryfy/core_ext.rb
|
80
82
|
- lib/queryfy/filter_lexer/formatter.rb
|
81
83
|
- lib/queryfy/queryfy_errors.rb
|
84
|
+
- lib/queryfy/queryfy_ext.rb
|
82
85
|
- lib/queryfy/version.rb
|
83
86
|
- queryfy.gemspec
|
84
87
|
homepage: https://github.com/Bonemind/Queryfy
|