Class: Seri::GroupSerializer
- Inherits:
-
Object
- Object
- Seri::GroupSerializer
- Defined in:
- lib/serializer/group_serializer.rb
Instance Method Summary collapse
-
#initialize(objects, serializer: nil, scope: {}) ⇒ GroupSerializer
constructor
A new instance of GroupSerializer.
- #to_h ⇒ Object
- #to_json ⇒ Object
Constructor Details
#initialize(objects, serializer: nil, scope: {}) ⇒ GroupSerializer
Returns a new instance of GroupSerializer.
3 4 5 6 7 8 9 |
# File 'lib/serializer/group_serializer.rb', line 3 def initialize(objects, serializer: nil, scope: {}) raise ArgumentError, 'serializer needs to be specified' if serializer.nil? @objects = objects @serializer = serializer @scope = scope end |
Instance Method Details
#to_h ⇒ Object
15 16 17 18 19 |
# File 'lib/serializer/group_serializer.rb', line 15 def to_h @objects .map { |object| @serializer.new(object, scope: @scope) } .map(&:to_h) end |
#to_json ⇒ Object
11 12 13 |
# File 'lib/serializer/group_serializer.rb', line 11 def to_json(*) Oj.dump(to_h, mode: :json) end |