I just noticed that your error does, in fact, appear in my output. However, if I run inside of the rails console I don't see the redundant "Here". i.e.:
/Dagnan/rails_inverse_of 659 > rails c Loading development environment (Rails 3.2.13) irb(main):001:0> c = Campaign.new => #<Campaign id: nil, created_at: nil, updated_at: nil, recurrence_id: nil> irb(main):002:0> c.recurrence = Recurrence.new => #<Recurrence id: nil, created_at: nil, updated_at: nil> irb(main):003:0> c.save! (0.1ms) begin transaction SQL (5.1ms) INSERT INTO "recurrences" ("created_at", "updated_at") VALUES (?, ?) [["created_at", Mon, 03 Jun 2013 15:15:11 UTC +00:00], ["updated_at", Mon, 03 Jun 2013 15:15:11 UTC +00:00]] Here SQL (0.5ms) INSERT INTO "campaigns" ("created_at", "recurrence_id", "updated_at") VALUES (?, ?, ?) [["created_at", Mon, 03 Jun 2013 15:15:11 UTC +00:00], ["recurrence_id", 1], ["updated_at", Mon, 03 Jun 2013 15:15:11 UTC +00:00]] Here (49.1ms) commit transaction => true irb(main):004:0> c => #<Campaign id: 1, created_at: "2013-06-03 15:15:11", updated_at: "2013-06-03 15:15:11", recurrence_id: 1> irb(main):005:0> My guess is it's a "test mode" artifact of some kind. On Monday, June 3, 2013 11:13:26 AM UTC-4, Rick wrote: > > I cannot duplicate your error running your github example. Here's what I > see: > > /Dagnan/rails_inverse_of 656 > rails --version > Rails 3.2.13 > /Dagnan/rails_inverse_of 657 > ruby --version > ruby 2.0.0p0 (2013-02-24 revision 39474) [x86_64-darwin12.3.0] > /Dagnan/rails_inverse_of 658 > ruby -Itest test/unit/campaign_test.rb > Run options: > > # Running tests: > > [1/1] CampaignTest#test_create_a_campaign_with_recurrenceHere > Here > Finished tests in 0.195217s, 5.1225 tests/s, 0.0000 assertions/s. > 1 tests, 0 assertions, 0 failures, 0 errors, 0 skips > > ruby -v: ruby 2.0.0p0 (2013-02-24 revision 39474) [x86_64-darwin12.3.0] > /Dagnan/rails_inverse_of 659 > > > On Monday, June 3, 2013 1:55:29 AM UTC-4, Michel Pigassou wrote: >> >> Help? >> >> On Friday, May 31, 2013 7:39:30 PM UTC+2, Michel Pigassou wrote: >>> >>> Hi. >>> >>> I created an app to illustrate my problem: >>> https://github.com/Dagnan/rails_inverse_of >>> >>> I have a model with a belongs_to, and the other with a has_one. So far >>> so good. >>> When I configure the option inverse_of on both model and I perform a >>> simple #save on the main object, it is actually saved two times (once saved >>> and then updated). >>> >>> *Is it an expected behavior?* >>> >>> A way to avoid this problem would be not to use inverse_of, or to have >>> "autovalidate: false" in the second model (Recurrence in my example) for >>> the has_one association. >>> >> -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-talk+unsubscr...@googlegroups.com. To post to this group, send email to rubyonrails-talk@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/e13e4aef-5ca6-49d7-88fd-17d1c584bf1c%40googlegroups.com?hl=en-US. For more options, visit https://groups.google.com/groups/opt_out.