# After\_create and has\_one association bug?

**URL:** <https://www.ruby-forum.com/t/after-create-and-has-one-association-bug/168732>\
**Category:** Rails\
**Created:** [May 25, 2009, 7:46am UTC](https://www.ruby-forum.com/t/after-create-and-has-one-association-bug/168732 "2009-05-25T07:46:16Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![andrewkendall](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/b77776/32.png) [@andrewkendall](https://www.ruby-forum.com/u/andrewkendall)\
**Post date:** [May 25, 2009, 7:46am UTC](https://www.ruby-forum.com/t/after-create-and-has-one-association-bug/168732/1 "2009-05-25T07:46:16Z")

</div>

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

---

<div class="post-metadata">

**Author:** ![andrewkendall](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/b77776/32.png) [@andrewkendall](https://www.ruby-forum.com/u/andrewkendall)\
**Post date:** [May 25, 2009, 7:52am UTC](https://www.ruby-forum.com/t/after-create-and-has-one-association-bug/168732/2 "2009-05-25T07:52:34Z")

</div>

Oh, forgot to mention… rails 2.3.2

---

<div class="post-metadata">

**Author:** ![andrewkendall](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/b77776/32.png) [@andrewkendall](https://www.ruby-forum.com/u/andrewkendall)\
**Post date:** [May 25, 2009, 8:32am UTC](https://www.ruby-forum.com/t/after-create-and-has-one-association-bug/168732/3 "2009-05-25T08:32:19Z")

</div>

On 25/05/2009, at 3:46 PM, Andrew K. 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.

Perhaps you should file a bug?

[http://rails.lighthouseapp.com](http://rails.lighthouseapp.com)

* * *

Blog: [http://random8.zenunit.com/](http://random8.zenunit.com/)  
Twitter: [http://twitter.com/random8r](http://twitter.com/random8r)  
Learn: [http://sensei.zenunit.com/](http://sensei.zenunit.com/)  
Latest: How to use Unix basics at [http://sensei.zenunit.com/](http://sensei.zenunit.com/)

---

<div class="post-metadata">

**Author:** ![andrewkendall](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/b77776/32.png) [@andrewkendall](https://www.ruby-forum.com/u/andrewkendall)\
**Post date:** [May 25, 2009, 10:44am UTC](https://www.ruby-forum.com/t/after-create-and-has-one-association-bug/168732/4 "2009-05-25T10:44:52Z")

</div>

Perhaps you should file a ticket? [Rails.lighthouseapp.com](http://Rails.lighthouseapp.com)

Blog: [http://random8.zenunit.com/](http://random8.zenunit.com/)  
Twitter: [http://twitter.com/random8r](http://twitter.com/random8r)  
Learn: [http://sensei.zenunit.com/](http://sensei.zenunit.com/)  
New video up now at [http://sensei.zenunit.com/](http://sensei.zenunit.com/) real fastcgi rails  
deploy process! Check it out now!

On 25/05/2009, at 3:46 PM, Andrew K.  
\<removed\_email\_address@domain.invalid

---

<div class="post-metadata">

**Author:** ![andrewkendall](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/b77776/32.png) [@andrewkendall](https://www.ruby-forum.com/u/andrewkendall)\
**Post date:** [May 25, 2009, 6:51pm UTC](https://www.ruby-forum.com/t/after-create-and-has-one-association-bug/168732/5 "2009-05-25T18:51:08Z")

</div>

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](https://rails.lighthouseapp.com/projects/8994/tickets/2249)

–Matt J.

On May 25, 1:46 am, Andrew K. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)
