effective_resources 2.2.0 → 2.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/models/effective/resources/relation.rb +6 -1
- data/lib/effective_resources/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: 8f9e795410769087135de28ce4b8c46a48de30d72dc9feeaa48a96966f059c43
|
4
|
+
data.tar.gz: 488c2b300e0b05e1c111093e903aae654ab7867f952b66b81dbdd2c5fce46159
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b6a2ca614bafbeef5787bcaf49a68d467c0707c3610e5b692d4d58d40295a630b15baa828c2ec71d8837c76372817db6a4ec78e4eb96b391517815d1edcfae99
|
7
|
+
data.tar.gz: 0deb208420dc1591c95cd23735ef4c4f843411d91a071cc515f492225e8c1a63f9d3415c66257357d7651aed58ca3f3f842a6508aa8eb1e1b0cd658325071879
|
@@ -87,8 +87,9 @@ module Effective
|
|
87
87
|
|
88
88
|
def search_associated(name, value, as:, operation:)
|
89
89
|
reflection = associated(name)
|
90
|
+
|
90
91
|
raise("expected to find #{relation.klass.name} #{name} reflection") unless reflection
|
91
|
-
raise("
|
92
|
+
raise("unexpected search_associated operation #{operation || 'nil'}") unless [:eq, :matches, :does_not_match, :sql].include?(operation)
|
92
93
|
|
93
94
|
# Parse values
|
94
95
|
value_ids = value.kind_of?(Array) ? value : (value.to_s.split(/,|\s|\|/) - [nil, '', ' '])
|
@@ -283,6 +284,10 @@ module Effective
|
|
283
284
|
term = Attribute.new(as).parse(value, name: name) || value
|
284
285
|
|
285
286
|
searched = case as
|
287
|
+
when :active_storage
|
288
|
+
relation.send("with_attached_#{name}").references("#{name}_attachment")
|
289
|
+
.where(ActiveStorage::Blob.arel_table[:filename].matches("%#{term}%"))
|
290
|
+
|
286
291
|
when :date, :datetime
|
287
292
|
if value.kind_of?(String)
|
288
293
|
end_at = (
|