active_record_query_fixer 0.0.3 → 0.0.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/lib/active_record_query_fixer.rb +5 -4
- data/lib/active_record_query_fixer/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 7627a28c325bb89b5b7e0f5b1498c69b828167fd6077dcc5093138bc2e66d6f4
|
4
|
+
data.tar.gz: 94ea6b3827f3bfd4e986ac927ba48a804ca86d41e00321200568e170ad5355b3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 34b513778527ea0b76d912a2d7e9786aa5f63e6a0af40d80325a79d441c8bebdacdf21712dce56ce5efc08f5e3e01d3b09d4fc1199abfb641f37be9a1f24ee0e
|
7
|
+
data.tar.gz: e4c1780d83ae0d4f5d3fd582c3979185d034dd584b3ec02b7d5ccb853cc51fe68dbd0c9c86a9fcd1a2104ffe8239233bba7b54f74e0c7ecdeb0a913f4bf897d1
|
@@ -21,7 +21,7 @@ class ActiveRecordQueryFixer
|
|
21
21
|
def fix_order_group
|
22
22
|
@query = @query.group("#{@query.model.table_name}.#{@query.model.primary_key}")
|
23
23
|
|
24
|
-
@query
|
24
|
+
@query.values[:order]&.each do |order|
|
25
25
|
@query = @query.group(extract_table_and_column_from_expression(order))
|
26
26
|
end
|
27
27
|
|
@@ -30,7 +30,7 @@ class ActiveRecordQueryFixer
|
|
30
30
|
|
31
31
|
def fix_order_select_distinct
|
32
32
|
changed = false
|
33
|
-
@query
|
33
|
+
@query.values[:order]&.each do |order|
|
34
34
|
@query = @query.select("#{extract_table_and_column_from_expression(order)} AS active_record_query_fixer_#{@count_select}")
|
35
35
|
changed = true
|
36
36
|
@count_select += 1
|
@@ -57,11 +57,12 @@ private
|
|
57
57
|
end
|
58
58
|
|
59
59
|
def fix_order_group?
|
60
|
-
@query
|
60
|
+
@query.values[:joins].blank? && @query.values[:distinct].present? ||
|
61
|
+
@query.values[:group].present? && @query.values[:order].present?
|
61
62
|
end
|
62
63
|
|
63
64
|
def fix_order_select_distinct?
|
64
|
-
@query
|
65
|
+
@query.values[:distinct].present? && @query.values[:order].present?
|
65
66
|
end
|
66
67
|
end
|
67
68
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: active_record_query_fixer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- kaspernj
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-06-
|
11
|
+
date: 2018-06-05 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: A library for automatically added `.select` on a column used for `.distinct`
|
14
14
|
or automatically adding `.group` for a column used for order.
|
@@ -45,7 +45,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
45
45
|
version: '0'
|
46
46
|
requirements: []
|
47
47
|
rubyforge_project:
|
48
|
-
rubygems_version: 2.6
|
48
|
+
rubygems_version: 2.7.6
|
49
49
|
signing_key:
|
50
50
|
specification_version: 4
|
51
51
|
summary: A library for automatically added `.select` on a column used for `.distinct`
|