On Jun 4, 10:33 am, springbok
<e...-5KZZ8/93A+Y0n/F98K4Iww@public.gmane.org>
wrote:> Hi,
>
> I hope someone can help me because this is driving me crazy, I''ve
> spent hours trying to track this down. I''m trying to convert a
Rails
> 1.1 to Rails 2.3.2 and I''m getting the following error when trying
to
> save a many to many relationship. I''ve double checked all the
> associations, I''ve used console to test my models and they all
work
> ok, I can do manually what I''m trying to do with Rails. There is
> something in the code somewhere outside of the model code that is
> causing this problem and I''m at a loss to track it down.
>
Have you (or a plugin) overwritten a core method somewhere ?
Fred> I''ve traced into the code for has_many_associations.rb:
>
> def insert_record(record, force = false, validate = true)
> set_belongs_to_association_for(record)
> force ? record.save! : record.save(validate)
> end
>
> and it blows up on the force ? record.save! : record.save(validate)
> line. Here is the stack trace:
>
> wrong number of arguments (1 for 0)
>
> RAILS_ROOT: /var/www/rails/dropzone
> Application Trace | Framework Trace | Full Trace
>
> /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/
> associations/has_many_association.rb:61:in `save''
> /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/
> associations/has_many_association.rb:61:in `insert_record''
> /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/
> associations/association_proxy.rb:145:in `send''
> /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/
> associations/association_proxy.rb:145:in `send''
> /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/
> autosave_association.rb:291:in `save_collection_association''
> /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/
> autosave_association.rb:284:in `each''
> /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/
> autosave_association.rb:284:in `save_collection_association''
> /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/
> autosave_association.rb:168:in
> `autosave_associated_records_for_booking_options''
> /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/
> callbacks.rb:180:in `evaluate_method''
> /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/
> callbacks.rb:180:in `evaluate_method''
> /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/
> callbacks.rb:180:in `instance_eval''
> /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/
> callbacks.rb:180:in `evaluate_method''
> /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/
> callbacks.rb:166:in `call''
> /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/
> callbacks.rb:93:in `run''
> /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/
> callbacks.rb:92:in `each''
> /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/
> callbacks.rb:92:in `send''
> /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/
> callbacks.rb:92:in `run''
> /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/
> callbacks.rb:276:in `run_callbacks''
> /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/
> callbacks.rb:344:in `callback''
> /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/
> callbacks.rb:283:in `update''
> /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/
> base.rb:2868:in `create_or_update_without_callbacks''
> /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/
> callbacks.rb:250:in `create_or_update''
> /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/
> base.rb:2556:in `save_without_validation!''
> /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/
> validations.rb:1019:in `save_without_dirty!''
> /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/
> dirty.rb:87:in `save_without_transactions!''
> /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/
> transactions.rb:200:in
> `save__without_trace_ActiveRecord___self_class_name__save''
> /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/
> connection_adapters/abstract/database_statements.rb:136:in
> `transaction''
> /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/
> transactions.rb:182:in `transaction''
> /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/
> transactions.rb:200:in
> `save__without_trace_ActiveRecord___self_class_name__save''
> /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/
> transactions.rb:208:in `rollback_active_record_state!''
> /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/
> transactions.rb:200:in
> `save__without_trace_ActiveRecord___self_class_name__save''
> /var/www/rails/dropzone/vendor/plugins/newrelic_rpm/lib/new_relic/
> agent/method_tracer.rb:138:in
`save__without_trace_ActiveRecord_save''
> /var/www/rails/dropzone/vendor/plugins/newrelic_rpm/lib/new_relic/
> agent/method_tracer.rb:41:in `trace_method_execution_with_scope''
> /var/www/rails/dropzone/vendor/plugins/newrelic_rpm/lib/new_relic/
> agent/method_tracer.rb:137:in
`save__without_trace_ActiveRecord_save''
> /var/www/rails/dropzone/vendor/plugins/newrelic_rpm/lib/new_relic/
> agent/method_tracer.rb:141:in
`save__without_trace_ActiveRecord_all''
> /var/www/rails/dropzone/vendor/plugins/newrelic_rpm/lib/new_relic/
> agent/method_tracer.rb:141:in `save!''
> /var/www/rails/dropzone/app/controllers/bookings_controller.rb:137:in
> `update''
>
> Any help appreciated, any suggestions on how to track down what is
> causing the problem would also be appreciated.
>
> Thanks.