Method: Dynomite::Item#initialize
- Defined in:
- lib/dynomite/item.rb
#initialize(attrs = {}, &block) ⇒ Item
Returns a new instance of Item.
39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/dynomite/item.rb', line 39 def initialize(attrs={}, &block) run_callbacks(:initialize) do @new_record = true attrs = attrs.to_hash if attrs.respond_to?(:to_hash) # IE: ActionController::Parameters raise ArgumentError, "attrs must be a Hash. attrs is a #{attrs.class}" unless attrs.is_a?(Hash) @attrs = ActiveSupport::HashWithIndifferentAccess.new(attrs) attrs.each do |k,v| send("#{k}=", v) if respond_to?("#{k}=") # so typecasting happens end @associations = {} if block yield(self) end end end |