Sha256: 95ae4ed3c24c4c3bbee311ab30d41540d562f2947d9ef9b077af855f51cb73d5

Contents?: true

Size: 744 Bytes

Versions: 2

Compression:

Stored size: 744 Bytes

Contents

module ActiveAdminImport
  class Model
    extend ActiveModel::Naming
    include ActiveModel::Conversion
    
    attr_accessor :file
    attr_accessor :hint 
    attr_reader :attributes
    
    def initialize(attributes={})
      self.hint= attributes.delete(:hint)
      @attributes = attributes
      @attributes.each do |key,value|
              #generate methods for instance object by attributes
              singleton_class.class_eval do
                define_method(key) { self.attributes[key] } unless method_defined? key
                define_method("#{key}=") { |new_value|  @attributes[key] = new_value } unless method_defined? "#{key}="
              end
        end
    end

    def persisted?
      false
    end

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
active_admin_import-2.0.1 lib/active_admin_import/model.rb
active_admin_import-2.0.0 lib/active_admin_import/model.rb