like_query 0.1.3 → 0.1.5

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: 2cc4cbe0280f2f97c3ffa480362bec25a31e05b659faaf4a94f973ec7c549a8e
4
- data.tar.gz: b8faeb19b25cb26ee63f0afefc10c1b181e3610c5e4b2d216e170119137f7cfd
3
+ metadata.gz: dcd1bdff2f0937db63147911ec7703739405d67bc30f35c19aa8261ee1ea5c38
4
+ data.tar.gz: e3fd7d9a4a235ed6010f3a950827d69c87e1d351908b915ae29b453c3d91bf90
5
5
  SHA512:
6
- metadata.gz: 228cdefd397b2d889c3c1767b2829ad99b4633213607f2d98f75485b3fb924d326cc3e764aa699973c33d50f311b926ef7f20c33cd6dbe5a6e6710651e8a6041
7
- data.tar.gz: 4de069dc6726b125f7ab265ca4ab2be358fae4a759c41ca16affb69b47cb6b3c9017dbd59f081af4800ae75d940915415f3798d191e34b968c3afd0988722ca1
6
+ metadata.gz: c73483e9cbd7cf1d93da216d7210780694fd27445241e860e93fbafe0973cefdc2c35eaa01319ab1a8f5c017cf1952e37764bf8606fd3b4e4633f21634118b7c
7
+ data.tar.gz: ea335097891ce39c54d1177aad72d5b311b944c8923b37c3718c23e09948caeb98f980a47816be4e6b65258667e0b81bc6367c2a5e2781faf8f1e10f8fdfbb3b
@@ -101,23 +101,25 @@ module LikeQuery
101
101
  match_number = str.match(/^(\d+(?:\.\d+)?)$/)
102
102
  match_range = str.match(/^(\d+(?:\.\d+)?)(\.\.)(\d+(?:\.\d+)?)$/)
103
103
 
104
- if match_range
105
- mr = match_range.to_s
106
- {
107
- float_from: mr.split('..').first.to_f,
108
- float_until: mr.split('..').last.to_f,
109
- }
110
- elsif match_number
111
- mn = match_number.to_s
112
- {
113
- float_from: mn,
114
- float_until: mn,
115
- }
116
- else
117
- {
118
- string: "%#{str}%"
119
- }
120
- end
104
+ res = if match_range
105
+ mr = match_range.to_s
106
+ {
107
+ float_from: mr.split('..').first.to_f,
108
+ float_until: mr.split('..').last.to_f,
109
+ }
110
+ elsif match_number
111
+ mn = match_number.to_s
112
+ {
113
+ float_from: mn,
114
+ float_until: mn,
115
+ }
116
+ else
117
+ {
118
+ string: "%#{str}%"
119
+ }
120
+ end
121
+ res[:string] = "%#{str}%"
122
+ res
121
123
  end
122
124
 
123
125
  def create_arel(schema_column, search_string, association = nil)
@@ -130,10 +132,10 @@ module LikeQuery
130
132
  end
131
133
  arel = base_object.arel_table[schema_column]
132
134
 
133
- if search_string[:float_from]
134
- if [:float, :big_decimal, :integer].include?(type)
135
- arel.between(search_string[:float_from]..search_string[:float_until])
136
- end
135
+ if search_string[:float_from] && [:float, :decimal, :big_decimal, :integer, :bigint].include?(type)
136
+
137
+ arel.between(search_string[:float_from]..search_string[:float_until])
138
+
137
139
  else
138
140
  arel.matches(search_string[:string])
139
141
  end
@@ -1,3 +1,3 @@
1
1
  module LikeQuery
2
- VERSION = "0.1.3"
2
+ VERSION = "0.1.5"
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.3
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - christian