Rails:从 has_many 关联对象构建对象

Rails: building object from has_many associated object

我认为这可能是一个语法问题。

  1. 我有一个Event.rb型号:

    class Event < ActiveRecord::Base
     belongs_to :members
     has_one :brazusc
    end
    

    A Member.rb:

    class Member < ActiveRecord::Base
     has_many :events
    end
    

    还有一个Brazusc.rb模特:

    class Brazusc < ActiveRecord::Base
     belongs_to :event
    end
    

我正在尝试做的事情:member.events.build_brazusc,但我得到:

NoMethodError: undefined method `build_brazusc' for #<Event::ActiveRecord_Associations_CollectionProxy:0x007f99517d4a78>

如何从 has_many 关联构建对象?

  1. 我也在尝试从 has_many/has_one 关联中检索关联模型,如下所示:member.events.brazusc,因为 brazusc 有一个 event_id ,但我得到:

    NoMethodError: undefined method `leads' for #<Event::ActiveRecord_Associations_CollectionProxy:0x007f99517d4a78>
    

如何检索与 event 关联的对象 (brazusc)?

任何帮助将不胜感激。

这样做就可以了:

new_brazusc = member.events.find_by(name: "Brazusc")
new_brazusc.build_brazusc.save