Sha256: 94d8ef00cfb186374ba2d8faa1c54904f2fa8c247456cbdb514d80836b274f3f

Contents?: true

Size: 686 Bytes

Versions: 7

Compression:

Stored size: 686 Bytes

Contents

require 'active_support/core_ext/string/inflections'
require 'rails_admin/config/fields'
require 'rails_admin/config/fields/association'

module RailsAdmin
  module Config
    module Fields
      module Types
        @@registry = {}

        def self.load(type)
          @@registry.fetch(type.to_sym) { raise "Unsupported field datatype: #{type}" }
        end

        def self.register(type, klass = nil)
          if klass.nil? && type.is_a?(Class)
            klass = type
            type = klass.name.to_s.demodulize.underscore
          end
          @@registry[type.to_sym] = klass
        end

        require 'rails_admin/config/fields/types/all'
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
rails_admin-3.0.0 lib/rails_admin/config/fields/types.rb
rails_admin-3.0.0.rc4 lib/rails_admin/config/fields/types.rb
rails_admin-3.0.0.rc3 lib/rails_admin/config/fields/types.rb
rails_admin-3.0.0.rc2 lib/rails_admin/config/fields/types.rb
rails_admin-3.0.0.rc lib/rails_admin/config/fields/types.rb
rails_admin-3.0.0.beta2 lib/rails_admin/config/fields/types.rb
rails_admin-3.0.0.beta lib/rails_admin/config/fields/types.rb