Sha256: 21f04cc0748c15692d71dff975c586227ab597d16763bd32e700523f963a1a0c

Contents?: true

Size: 796 Bytes

Versions: 7

Compression:

Stored size: 796 Bytes

Contents

module DynamicController
  class Resource
    attr_reader :resource_class,
                :param_name,
                :instance_variable_name,
                :children_name

    def initialize(options={})
      raise 'Param resource_class must be a class' if !options.has_key?(:resource_class) || !options[:resource_class].is_a?(Class)
      @resource_class = options[:resource_class]
      @param_name = options[:param_name] || "#{resource_class.to_s.demodulize.underscore}_id"
      @instance_variable_name = options[:instance_variable_name] || "@#{resource_class.to_s.demodulize.underscore}"
      @children_name = options[:children_name] || resource_class.to_s.demodulize.pluralize.underscore
    end

    def find(id)
      resource_class.find(id)
    end

  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
dynamic_controller-0.0.8 lib/dynamic_controller/resource.rb
dynamic_controller-0.0.7 lib/dynamic_controller/resource.rb
dynamic_controller-0.0.6 lib/dynamic_controller/resource.rb
dynamic_controller-0.0.5 lib/dynamic_controller/resource.rb
dynamic_controller-0.0.4 lib/dynamic_controller/resource.rb
dynamic_controller-0.0.3 lib/dynamic_controller/resource.rb
dynamic_controller-0.0.2 lib/dynamic_controller/resource.rb