Class: ActiveModelSerializers::FilterableAttributes::FilteredAttribute
- Inherits:
-
ActiveModel::Serializer::Attribute
- Object
- ActiveModel::Serializer::Attribute
- ActiveModelSerializers::FilterableAttributes::FilteredAttribute
- Defined in:
- lib/filterable_attributes.rb
Instance Method Summary collapse
Instance Method Details
#evaluate_condition(serializer) ⇒ Object
29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/filterable_attributes.rb', line 29 def evaluate_condition(serializer) case condition when Symbol serializer.send(condition) when String serializer.instance_eval(condition) when Proc if condition.arity.zero? serializer.instance_exec(&condition) else serializer.instance_exec(serializer, &condition) end end end |
#value(serializer) ⇒ Object
21 22 23 24 25 26 27 |
# File 'lib/filterable_attributes.rb', line 21 def value(serializer) if block serializer.instance_eval(&block) else serializer.read_attribute_for_serialization(name) end end |