Ruby on rails 如何链接rails中具有多对多关系的模型?

Ruby on rails 如何链接rails中具有多对多关系的模型?,ruby-on-rails,ruby-on-rails-4,Ruby On Rails,Ruby On Rails 4,我是个新手,需要帮助 我有两个主模型: 公寓 设施 我有一个表(property_facility)来链接两个父表, 所以一个公寓可以有很多设施,一个设施也可以是自己的 对很多人来说,我试过: apt型号: 设施型号: 物业和设施模型: 不知怎的,我不能使它工作,这给了我一个错误 未找到名称“property\u facilities”的关联。它已经被定义了吗 我使用的是rails 4.2.7您应该使用与模型同名的关联 当一个模型有一个或多个关系时,关联应该是复数名称。(例如:has\u man

我是个新手,需要帮助

我有两个主模型:

  • 公寓
  • 设施
  • 我有一个表(property_facility)来链接两个父表, 所以一个公寓可以有很多设施,一个设施也可以是自己的 对很多人来说,我试过:

    apt型号: 设施型号: 物业和设施模型: 不知怎的,我不能使它工作,这给了我一个错误

    未找到名称“property\u facilities”的关联。它已经被定义了吗


    我使用的是rails 4.2.7

    您应该使用与模型同名的
    关联

    当一个模型有一个或多个关系时,关联应该是复数名称。(例如:has\u many)

    例如,一个协会应该是singluar名称(例如:has_one,belown to)

    Apt型号:

    class Apt < ActiveRecord::Base
    
        has_many :property_facilities
        has_many :facilities, through: :property_facilities
    
        accepts_nested_attributes_for :property_facilities
    
    end  
    
    class Facility < ActiveRecord::Base
    
        has_many :property_facilities   
        has_many :apts, through: :property_facilities
    
        accepts_nested_attributes_for :property_facilities
    
    end    
    
    class PropertyFacility < ActiveRecord::Base
    
        belongs_to :apt
    
        belongs_to :facility
    
    end      
    
    类Apt 设施型号:

    class Apt < ActiveRecord::Base
    
        has_many :property_facilities
        has_many :facilities, through: :property_facilities
    
        accepts_nested_attributes_for :property_facilities
    
    end  
    
    class Facility < ActiveRecord::Base
    
        has_many :property_facilities   
        has_many :apts, through: :property_facilities
    
        accepts_nested_attributes_for :property_facilities
    
    end    
    
    class PropertyFacility < ActiveRecord::Base
    
        belongs_to :apt
    
        belongs_to :facility
    
    end      
    
    class工具
    物业\u设施型号:

    class Apt < ActiveRecord::Base
    
        has_many :property_facilities
        has_many :facilities, through: :property_facilities
    
        accepts_nested_attributes_for :property_facilities
    
    end  
    
    class Facility < ActiveRecord::Base
    
        has_many :property_facilities   
        has_many :apts, through: :property_facilities
    
        accepts_nested_attributes_for :property_facilities
    
    end    
    
    class PropertyFacility < ActiveRecord::Base
    
        belongs_to :apt
    
        belongs_to :facility
    
    end      
    
    class PropertyFacility
    你好,谢谢你的回答,我的错。。我忘了提到,我的模型名是apt。你的模型看起来和我的一样,不知怎么的,它不工作。现在是什么错误?如果您正在控制台中尝试,请重新加载控制台。它仍会抛出此错误“未找到名称“property_facilities”的关联。是否已定义它?”嘿,apt和facility模型中都有
    多个:property_facilities
    ,请检查更新的ans。