composite_primary_keys 11.0.0.beta1 → 11.0.0.beta2
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
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a08042363d370a0d0dfd0a9299fab51dd7eeb82d
|
4
|
+
data.tar.gz: 17ee927164d58a2f018cbab91d6019b19870ba6d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b59369b4e4da7602adbdd189849ff00fb6759c3f772d46668b613323fb69b0f8bd853318800622ea0d9757ef98dd68d21e0c5150b5f68c508f2bcc412e1b6a0a
|
7
|
+
data.tar.gz: ffeee036dfe8ee31a6cbd184feccf00109d4d871200d7f9568e74823f1e5acc57ac2069792e01e4a29a53eeb5c1c3d7c19d0bc94effb0e8510aebe19e65f3641
|
data/History.rdoc
CHANGED
@@ -1,28 +1,5 @@
|
|
1
1
|
module CompositePrimaryKeys
|
2
2
|
module CollectionAssociation
|
3
|
-
def get_records
|
4
|
-
cpk_applies = target.try(:composite?) || owner.try(:composite?)
|
5
|
-
return scope.to_a if cpk_applies
|
6
|
-
super
|
7
|
-
end
|
8
|
-
|
9
|
-
def ids_reader
|
10
|
-
if loaded?
|
11
|
-
load_target.map do |record|
|
12
|
-
if reflection.association_primary_key.is_a?(Array)
|
13
|
-
reflection.association_primary_key.map { |key| record.send(key) }
|
14
|
-
else
|
15
|
-
record.send(reflection.association_primary_key)
|
16
|
-
end
|
17
|
-
end
|
18
|
-
else
|
19
|
-
@association_ids ||= (
|
20
|
-
column = "#{reflection.quoted_table_name}.#{reflection.association_primary_key}"
|
21
|
-
scope.pluck(column)
|
22
|
-
)
|
23
|
-
end
|
24
|
-
end
|
25
|
-
|
26
3
|
def ids_writer(ids)
|
27
4
|
pk_type = reflection.association_primary_key_type
|
28
5
|
ids = Array(ids).reject(&:blank?)
|
@@ -23,8 +23,9 @@ module CompositePrimaryKeys
|
|
23
23
|
# connection.column_name_from_arel_node(arel_attribute(primary_key)),
|
24
24
|
# relation.order_values
|
25
25
|
# )
|
26
|
+
|
26
27
|
columns = @klass.primary_keys.map do |key|
|
27
|
-
|
28
|
+
connection.column_name_from_arel_node(arel_attribute(key))
|
28
29
|
end
|
29
30
|
values = @klass.connection.columns_for_distinct(columns, relation.order_values)
|
30
31
|
|
@@ -32,12 +33,12 @@ module CompositePrimaryKeys
|
|
32
33
|
|
33
34
|
id_rows = skip_query_cache_if_necessary { @klass.connection.select_all(relation.arel, "SQL") }
|
34
35
|
# CPK
|
35
|
-
#
|
36
|
-
|
37
|
-
|
36
|
+
#id_rows.map { |row| row[primary_key] }
|
37
|
+
id_rows.map do |row|
|
38
|
+
@klass.primary_keys.map do |key|
|
38
39
|
row[key]
|
39
|
-
|
40
|
-
|
40
|
+
end
|
41
|
+
end
|
41
42
|
end
|
42
43
|
|
43
44
|
def construct_relation_for_exists(conditions)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: composite_primary_keys
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 11.0.0.
|
4
|
+
version: 11.0.0.beta2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Charlie Savage
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-12-
|
11
|
+
date: 2017-12-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord
|