like_query 0.0.10 → 0.0.12
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/like_query/collect.rb +12 -4
- 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: 7d2dc6db9752704bd4ddb724dad78fd1af88bbbc9a865ab4ac4e1d9f879118a4
|
4
|
+
data.tar.gz: 5d42e509c6723aeffe2bb27626ac2a511f725e6c88ff56ab101220135839540e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e5e6924e36cb86fd1b3fcc27786575b3c04ac0381583c891574a000f3b89c44aedc9402b476ddb8db0f1738658ba5eae51226014e2ef9a3758b2382d510ad8f9
|
7
|
+
data.tar.gz: a2146917979e4a67490848ccc3eee98b9d70651bdf9aca7fb2f91848671092724cbcc7840ebd22ef3e3081c010b15308ea9ceb98a807bbcb2fc404dd032c9884
|
data/lib/like_query/collect.rb
CHANGED
@@ -18,10 +18,12 @@ module LikeQuery
|
|
18
18
|
@start_time = Time.now
|
19
19
|
@schemes = {}
|
20
20
|
@images = {}
|
21
|
+
@urls = {}
|
21
22
|
end
|
22
23
|
|
23
|
-
def set_schema(model, schema)
|
24
|
+
def set_schema(model, schema = nil, url: nil)
|
24
25
|
@schemes[model.to_s] = schema_to_hash(schema)
|
26
|
+
@urls[model.to_s] = url if url
|
25
27
|
end
|
26
28
|
|
27
29
|
def collect(output_schema = nil, limit: nil, parent: nil, image: nil, url: nil, &block)
|
@@ -38,12 +40,18 @@ module LikeQuery
|
|
38
40
|
end
|
39
41
|
model_name = recs.klass.to_s
|
40
42
|
schema = @schemes[model_name] || schema_to_hash(nil)
|
43
|
+
|
41
44
|
_img = image || schema[:image]
|
42
45
|
if _img.present?
|
43
46
|
@images[model_name] = _img
|
44
47
|
@image = true
|
45
48
|
end
|
46
49
|
|
50
|
+
_url = url || @urls[model_name]
|
51
|
+
if url.present?
|
52
|
+
@urls[model_name] = url
|
53
|
+
end
|
54
|
+
|
47
55
|
if parent
|
48
56
|
parent_assoc = recs.klass.reflect_on_association(parent)
|
49
57
|
if !parent_assoc
|
@@ -60,7 +68,7 @@ module LikeQuery
|
|
60
68
|
|
61
69
|
if parent
|
62
70
|
parent_record = rec.send(parent)
|
63
|
-
r = record_to_hash(rec, schema, image, parent_record, url:
|
71
|
+
r = record_to_hash(rec, schema, image, parent_record, url: _url)
|
64
72
|
parent_class_name = parent_record.class.to_s
|
65
73
|
parent_key = "#{parent_class_name}#{parent_record.id}"
|
66
74
|
|
@@ -70,13 +78,13 @@ module LikeQuery
|
|
70
78
|
Rails.logger.debug("WARNING: NO SCHEMA GIVEN FOR «#{parent_class_name}»")
|
71
79
|
parent_schema = schema_to_hash(nil)
|
72
80
|
end
|
73
|
-
@data[parent_key] = record_to_hash(parent_record, parent_schema, @images[parent_class_name])
|
81
|
+
@data[parent_key] = record_to_hash(parent_record, parent_schema, @images[parent_class_name], url: @urls[parent_class_name])
|
74
82
|
@length += 1
|
75
83
|
end
|
76
84
|
@data[parent_key][:children] ||= []
|
77
85
|
@data[parent_key][:children].push(r)
|
78
86
|
else
|
79
|
-
r = record_to_hash(rec, schema, image, url:
|
87
|
+
r = record_to_hash(rec, schema, image, url: _url)
|
80
88
|
@data["#{rec.class}#{rec.id}"] = r
|
81
89
|
end
|
82
90
|
c = (@image ? 1 : 0) + r[:values].to_a.length
|
data/lib/like_query/version.rb
CHANGED