Each time I try to save a particular model class (in this case a Batch)
in my application, I receive the following error:
undefined method `insert_record'' for #<Array:0x4c8fc7c>
It seems that ActiveRecord is somehow getting a hold of an array and
doesn''t know how to save it. Can anyone shed some light on what could
be
causing this?
I am using the userstamp plugin, and removed it to eliminate the
possibility that it was the culprit, but I receive the same error (minus
the pertinent line in the trace).
Stack trace:
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/callbacks.rb:319:in
`send''
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/callbacks.rb:319:in
`callback''
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/callbacks.rb:319:in
`each''
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/callbacks.rb:319:in
`callback''
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/callbacks.rb:309:in
`callback''
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/callbacks.rb:304:in
`each''
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/callbacks.rb:304:in
`callback''
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/callbacks.rb:227:in
`create_without_timestamps''
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/timestamp.rb:29:in
`create_without_user''
vendor/plugins/userstamp/lib/userstamp.rb:36:in `create''
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/base.rb:2238:in
`create_or_update_without_callbacks''
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/callbacks.rb:213:in
`create_or_update''
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/base.rb:1972:in
`save_without_validation''
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/validations.rb:934:in
`save_without_transactions''
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/transactions.rb:108:in
`save''
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/connection_adapters/abstract/database_statements.rb:66:in
`transaction''
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/transactions.rb:80:in
`transaction''
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/transactions.rb:100:in
`transaction''
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/transactions.rb:108:in
`save''
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/transactions.rb:120:in
`rollback_active_record_state!''
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/transactions.rb:108:in
`save''
app/models/batch.rb:99:in `save''
app/controllers/batches_controller.rb:156:in `create''
-e:2:in `load''
-e:2
# in batch_controller.rb
#===================================if @batch.save # this is line 156
# do some other stuff
end
# batch.rb
#=====================class Batch < ActiveRecord::Base
has_many :items
has_many :batch_field_values
belongs_to :created_by, :class_name => "User", :foreign_key =>
"created_by"
belongs_to :updated_by, :class_name => "User", :foreign_key =>
"updated_by"
belongs_to :location
belongs_to :product
alias_attribute :user, :created_by
# other methods omitted
def save
if super # this is line 99
@items.each do |item|
item.save
self.items << item
end
end
end
# more stuff omitted
end
# item.rb
#====================class Item < ActiveRecord::Base
belongs_to :created_by, :class_name => "User", :foreign_key =>
"created_by"
belongs_to :updated_by, :class_name => "User", :foreign_key =>
"updated_by"
belongs_to :location
belongs_to :batch
belongs_to :product
attr_protected :user_id, :ip_address, :location_id, :product_id,
:created_at, :updated_at, :created_by, :updated_by
alias_attribute :user, :created_by
end
# batch_field_values.rb
#======================class BatchFieldValue < ActiveRecord::Base
belongs_to :item_batch_field
belongs_to :batch
end
--
Posted via http://www.ruby-forum.com/.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Talk" group.
To post to this group, send email to
rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---
Heinz Strunk
2009-Mar-01 13:39 UTC
Re: Undefined method ''insert_record'' on ActiveRecord save
I''ve got the same problem "Undefined method ''insert_record''". Could you solve that problem? -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---