module HQ::GraphQL::Ext::InputObjectExtensions::InstanceMethods
Public Instance Methods
format_nested_attributes()
click to toggle source
Recursively format attributes so that they are compatible with `accepts_nested_attributes_for`
# File lib/hq/graphql/ext/input_object_extensions.rb, line 21 def format_nested_attributes self.each.inject({}) do |formatted_attrs, (key, value) | if self.class.nested_attributes.include?(key.to_s) formatted_value = if value.is_a?(Array) value.map(&:format_nested_attributes) elsif value value.format_nested_attributes end formatted_attrs[:"#{key}_attributes"] = formatted_value if formatted_value elsif key.to_s == "x" formatted_attrs[:X] = value else formatted_attrs[key] = value end formatted_attrs end end