On Nov 12, 2008, at 5:29 PM, reHa wrote:
> @account = Account.create(params[:account])
>
> now you have new account - contact is empty
>
> @account.contact is nil -> calling @account.contact.create is the same
> as calling nil.create
>
> try:
>
> @account = Account.create(params[:account])
> @account.contact = Contact.create(params[:contact])
>
> On Nov 12, 11:10 pm, "T. B." <[EMAIL PROTECTED]> wrote:
>> Hello all. I have the following code in my Accounts controller:
>>
>> @account = Account.create(params[:account])
>> @website = @account.websites.create(params[:website])
>> @contact = @account.contact.create(params[:contact])

@contact = @account.create_contact(params[:contact])

>>
>> My Account model has_one :contact and my Contact belongs_to :account,
>> yet I get the following error:
>>
>> NoMethodError: You have a nil object when you didn't expect it!
>> The error occurred while evaluating nil.create
>>
>> - - - - - -
>>
>> I've scoured the documentation and can't find where I'm mucking  
>> things
>> up. Any help is greatly appreciated!
>>
>> -tb



It's right there in the docs for has_one.  Compare to the similar  
semantics for has_many associations that you're obviously familiar with.

http://api.rubyonrails.org/classes/ActiveRecord/Associations/ClassMethods.html#M001385

-Rob

Rob Biedenharn          http://agileconsultingllc.com
[EMAIL PROTECTED]



--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to