Forum: Ruby on Rails wrong number of arguments (1 for 0)

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Etienne V. (Guest)
on 2009-06-04 13:34
(Received via mailing list)
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.

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.
Frederick C. (Guest)
on 2009-06-04 14:26
(Received via mailing list)
On Jun 4, 10:33 am, springbok <removed_email_address@domain.invalid> wrote:
>
Have you (or a plugin) overwritten a core method somewhere ?

Fred
This topic is locked and can not be replied to.