Jesse wrote in post #968656:
> On 12/15/10 1:27 PM, Finne Jager wrote:
>>
>> And both FireFighter and SafetyOfficer belongs_to :timesheet
>> The models both have timesheet_id fields as well.
>>
> Theres the difference.
>
> Incident.first.timesheet.fire_fighters is an array of firefighter
> objects and thus you can append a new member to it.
>
> Incident.first.timesheet.safety_officer is a direct possession of a
> safety_officer object, so you are not appending a safety_officer to it,
> but rather adding its ID to a safety_officer_id column.
>
> So
> array << new_array_member would not work in this case.
>
> If there i to be only 1 safety_officer or a timesheet then the way you
> would want to create the association is to have a form for the timesheet
> in question that has the value of the safety_officer_id attribute set to
> the id of the safety_officer you want to associate to the time sheet.
> Submit and let rails do the work. It should glean that you are trying to
> update just the 1 attribute for that timesheet and trigger an update
> action on it.

I understand what I'm doing wrong. I don't have to append the 
SafetyOfficer at all, I just need to SET it because there can be only 
one SafetyOfficer.

Incident.first.timesheet.safety_officer = SafetyOfficer.last

-- 
Posted via http://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 rubyonrails-t...@googlegroups.com.
To unsubscribe from this group, send email to 
rubyonrails-talk+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en.

Reply via email to