Is this the proper relationship for this to work?   It looks right to me...

What I want to do is add notes to a student through the Attendance Edit form

class Attendance < ActiveRecord::Base
        belongs_to :student
        accepts_nested_attributes_for :student
        has_many :notes, through: :student
        accepts_nested_attributes_for :notes
end

class Student < ActiveRecord::Base
        # Also used through Attendance Edit
        has_many :attendances, dependent: :destroy
        has_many :notes, dependent: :destroy
        accepts_nested_attributes_for :notes, allow_destroy: true
end

class Note < ActiveRecord::Base
        belongs_to :student
end



On Thursday, August 16, 2018 at 4:59:59 PM UTC-4, John Sanderbeck wrote:
>
> I figured it out...   Didn't have a accepts_nested_attributes_for :notes 
> in my attendance model...  Duh !!!
>
> However when I try to write I get an error 
>
> Cannot modify association 'Attendance#notes' because the source reflection 
> class 'Note' is associated to 'Student' via :has_many.
>
>
> On Wednesday, August 15, 2018 at 6:42:38 AM UTC-4, John Sanderbeck wrote:
>>
>> The way the nests are working now is it should render the file 
>> _note_fields.html.erb but it acts like it is not finding that file which 
>> tells me the fields_for is looking for a different name due to the way it 
>> is nested
>>
>> On Wednesday, August 15, 2018 at 6:26:31 AM UTC-4, John Sanderbeck wrote:
>>>
>>> That's the way all my other nests are defined and they work fine...  I 
>>> think the problem is I am adding a nest from a different model than I am 
>>> actually working on...
>>>
>>> On Tuesday, August 14, 2018 at 8:03:57 PM UTC-4, Walter Lee Davis wrote:
>>>>
>>>>
>>>> > On Aug 14, 2018, at 5:49 PM, John Sanderbeck <[email protected]> 
>>>> wrote: 
>>>> > 
>>>> > Not sure if the subject is correct for what I am trying to do... 
>>>> > 
>>>> > I am working on a School application and I added an Attendance 
>>>> section 
>>>> > 
>>>> > There is an attendance record that is associated to a student record 
>>>> > 
>>>> > The student record has an associated model called notes... 
>>>> > 
>>>> > What I would like to be able to do is add notes to the student 
>>>> through the attendance record... 
>>>> > 
>>>> > My Attendance record belongs_to :student 
>>>> > My Student record has_many :attendances 
>>>> > My Student record has_many :notes 
>>>> > 
>>>> > I can access Attendance.student.notes just fine, but when I try to 
>>>> add notes through a nested form it doesn't like that... 
>>>> > 
>>>> > Also just tried adding has_many :notes, through: :student and now I 
>>>> can access Attendance.notes, however when I add 
>>>> > 
>>>> >       <%= f.fields_for :notes %> 
>>>>
>>>> You need to add a 'do' at the end of the previous line. Without that, 
>>>> and... 
>>>>
>>>> >       <%= f.link_to_add "Add Note", :notes, class: 'btn btn-xs 
>>>> btn-primary btn-padded' %> 
>>>>
>>>> an end here to close the block, you're not giving a black to the 
>>>> fields_for macro. That's what the error means. 
>>>>
>>>> Walter 
>>>>
>>>> > 
>>>> > I get an error no block given(yield) 
>>>> > 
>>>> > Any suggestions on how to code the nested form?   Is this a routes 
>>>> issue? 
>>>> > 
>>>> > John 
>>>> > 
>>>> > -- 
>>>> > 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 [email protected]. 
>>>> > To post to this group, send email to [email protected]. 
>>>> > To view this discussion on the web visit 
>>>> https://groups.google.com/d/msgid/rubyonrails-talk/038295ce-0ea0-433a-8df0-7e29e681d934%40googlegroups.com.
>>>>  
>>>>
>>>> > For more options, visit https://groups.google.com/d/optout. 
>>>>
>>>>

-- 
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 [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/98e371ed-cb7d-4669-9ced-c60b5e6b6ceb%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to