It's not *correct* behavior, but it wasn't caught before 2.3.2 went out the door. It's been fixed in edge - more details at https://rails.lighthouseapp.com/projects/8994/tickets/2249
--Matt Jones On May 25, 1:46 am, Andrew Kaspick <[email protected]> wrote: > Hello, > > I've come across an issue that I'm sure is a bug when using after_create > with a has_one association, but I'm not 100% certain if I'm missing > something. > > This is pretty much exactly the code I'm using. Two simple classes > (Account and Contact) and I create the contact after I create an account > (via after_create). I'm not passing in a "name" field which the contact > requires via validates_presence_of, so the contact should not get saved, > but it in fact does. > > class Account < ActiveRecord::Base > has_one :contact > def after_create > create_contact > end > end > > class Contact < ActiveRecord::Base > belongs_to :account > validates_presence_of :name > end > > The test... > > class AccountTest < ActiveSupport::TestCase > test "this ain't right" do > a = Account.create > p a.contact > p a.new_record? > end > end > > produces... > > #<Contact id: 996332878, name: nil, account_id: 1, created_at: > "2009-05-25 05:40:40", updated_at: "2009-05-25 05:40:40"> > false > > Is this expected behaviour? > > Thanks, > Andrew > -- > Posted viahttp://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 [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---

