Wrong number of arguments (1 for 0)


#1

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:ininsert_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:insend’
/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:ineach’
/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:inautosave_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:inevaluate_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:inevaluate_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:inrun’
/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:insend’
/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:inrun_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:inupdate’
/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:increate_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:insave_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:insave__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:intransaction’
/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:inrollback_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:insave__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:insave__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:insave!’
/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.


#2

On Jun 4, 10:33 am, springbok removed_email_address@domain.invalid wrote:

Have you (or a plugin) overwritten a core method somewhere ?

Fred