like_query 0.1.9 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/like_query/model_extensions.rb +8 -17
- data/lib/like_query/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2244376c37da7206ec259ae99b3ce2e42588141cc6b45251cff9baec1d118882
|
4
|
+
data.tar.gz: 6d8c20860daa488b5c70a87c6b751cadf7bd668062df0039cf859ba93d720c0d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2bf07d4bbe541b83cb78aad5ca59107d19d8269ab89bfed4b495bdfa13ef020ad3d016740a8a07f5e6dfcfad066cc60811b8806754718ad867110894354da4ce
|
7
|
+
data.tar.gz: a235b679dcb95c7a90302e67aeb9c16b599e42696387573e09a3a73ad1168d0ad29c349223e943e3a32ae2f95fc63449de9afa0cf96d100f1ebb82f31e10c551
|
@@ -38,16 +38,10 @@ module LikeQuery
|
|
38
38
|
raise "Unknown association: :#{k}" unless assoc.present?
|
39
39
|
associations.push(k.to_sym) unless associations.include?(k.to_sym)
|
40
40
|
if v.is_a?(Symbol) || v.is_a?(String)
|
41
|
-
|
42
|
-
if _q.present?
|
43
|
-
q.push(_q.to_sql)
|
44
|
-
end
|
41
|
+
q.push(query_string(v, f_str, assoc))
|
45
42
|
elsif v.is_a?(Array)
|
46
43
|
v.each do |_v|
|
47
|
-
|
48
|
-
if _q.present?
|
49
|
-
q.push(_q.to_sql)
|
50
|
-
end
|
44
|
+
q.push(query_string(_v, f_str, assoc))
|
51
45
|
end
|
52
46
|
else
|
53
47
|
raise "unknown element: #{p}"
|
@@ -55,10 +49,7 @@ module LikeQuery
|
|
55
49
|
end
|
56
50
|
|
57
51
|
else
|
58
|
-
|
59
|
-
if _q.present?
|
60
|
-
q.push(_q.to_sql)
|
61
|
-
end
|
52
|
+
q.push(query_string(p, f_str))
|
62
53
|
|
63
54
|
end
|
64
55
|
|
@@ -131,7 +122,7 @@ module LikeQuery
|
|
131
122
|
res
|
132
123
|
end
|
133
124
|
|
134
|
-
def
|
125
|
+
def query_string(schema_column, search_string, association = nil)
|
135
126
|
|
136
127
|
base_object = association&.klass || self
|
137
128
|
begin
|
@@ -143,14 +134,14 @@ module LikeQuery
|
|
143
134
|
|
144
135
|
if search_string[:float_from] && [:float, :decimal, :big_decimal, :integer, :bigint].include?(type)
|
145
136
|
|
146
|
-
q = arel.between(search_string[:float_from]..search_string[:float_until])
|
147
|
-
dbg(
|
137
|
+
q = arel.between(search_string[:float_from]..search_string[:float_until]).to_sql
|
138
|
+
dbg(" Query from number-field => #{q}")
|
148
139
|
q
|
149
140
|
|
150
141
|
else
|
151
142
|
|
152
|
-
q = arel.matches(search_string[:string])
|
153
|
-
dbg(
|
143
|
+
q = arel.matches(search_string[:string]).to_sql
|
144
|
+
dbg(" Query from string-field => #{q}")
|
154
145
|
q
|
155
146
|
|
156
147
|
end
|
data/lib/like_query/version.rb
CHANGED