module Exportable::Utils
Utiity methods used for gem
Public Instance Methods
get_export_options(model, options)
click to toggle source
Compute exportable options after overriding preferences
# File lib/exportable/utils.rb, line 5 def get_export_options(model, options) default_options = { only: model.attribute_names.map(&:to_sym), except: [], methods: [], header: true } options = default_options.merge(options) unless options[:only].is_a?(Array) && options[:except].is_a?(Array) && options[:methods].is_a?(Array) raise ArgumentError, 'Exportable: Expecting Array type for field options' end fields = options[:only] - options[:except] + options[:methods] { fields: fields, header: options[:header] } end