like_query 0.1.1 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9f271a2601cfb3587fb40e2cd50ae325d54b00194b3ae6935e1ebe9e4b9e8bcb
4
- data.tar.gz: bd3d3863befc960ed4f94842f0e6643715aae58ff16394b7d047b124d0ca26b8
3
+ metadata.gz: 2cc4cbe0280f2f97c3ffa480362bec25a31e05b659faaf4a94f973ec7c549a8e
4
+ data.tar.gz: b8faeb19b25cb26ee63f0afefc10c1b181e3610c5e4b2d216e170119137f7cfd
5
5
  SHA512:
6
- metadata.gz: 18786e249d72ece3a0d442be622a0cb44d99ffd7ea596dc0b5a0f4cc92f4845d9eea08f61ecfbdeb8959802a8115a258bf53f207f7590fd0d95c0e38c7285578
7
- data.tar.gz: 43f86c5823d53103ea79ce9ecc92318b6fbf5ba2cccf9702a3c107b7f8b080df0f62144d76c0b20e157920a7d8df641791f6b718eeee23518bda40aad7b31cd2
6
+ metadata.gz: 228cdefd397b2d889c3c1767b2829ad99b4633213607f2d98f75485b3fb924d326cc3e764aa699973c33d50f311b926ef7f20c33cd6dbe5a6e6710651e8a6041
7
+ data.tar.gz: 4de069dc6726b125f7ab265ca4ab2be358fae4a759c41ca16affb69b47cb6b3c9017dbd59f081af4800ae75d940915415f3798d191e34b968c3afd0988722ca1
@@ -32,11 +32,15 @@ module LikeQuery
32
32
  associations.push(k.to_sym) unless associations.include?(k.to_sym)
33
33
  if v.is_a?(Symbol) || v.is_a?(String)
34
34
  _q = create_arel(v, f_str, assoc)
35
- q = (q ? q.or(_q) : _q)
35
+ if _q.present?
36
+ q = (q ? q.or(_q) : _q)
37
+ end
36
38
  elsif v.is_a?(Array)
37
39
  v.each do |_v|
38
40
  _q = create_arel(_v, f_str, assoc)
39
- q = (q ? q.or(_q) : _q)
41
+ if _q.present?
42
+ q = (q ? q.or(_q) : _q)
43
+ end
40
44
  end
41
45
  else
42
46
  raise "unknown element: #{p}"
@@ -44,7 +48,9 @@ module LikeQuery
44
48
  end
45
49
  else
46
50
  _q = create_arel(p, f_str)
47
- q = (q ? q.or(_q) : _q)
51
+ if _q.present?
52
+ q = (q ? q.or(_q) : _q)
53
+ end
48
54
  end
49
55
 
50
56
  end
@@ -117,7 +123,11 @@ module LikeQuery
117
123
  def create_arel(schema_column, search_string, association = nil)
118
124
 
119
125
  base_object = association&.klass || self
120
- type = base_object.columns_hash[schema_column.to_s].type
126
+ begin
127
+ type = base_object.columns_hash[schema_column.to_s].type
128
+ rescue => e
129
+ raise "#{base_object}.columns_hash[#{schema_column.to_s}].type RETURNED => «#{e.message}»"
130
+ end
121
131
  arel = base_object.arel_table[schema_column]
122
132
 
123
133
  if search_string[:float_from]
@@ -1,3 +1,3 @@
1
1
  module LikeQuery
2
- VERSION = "0.1.1"
2
+ VERSION = "0.1.3"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: like_query
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - christian