0

이 연결을 설정하는 올바른 방법을 찾지 못했습니다.다형성 has_many : through를 설정하는 방법은 무엇입니까?

필자에게는 음악가, 밴드 및 관리자의 3 가지 모델이 있습니다. 그들 각각은 그들과 관련된 특정 "수준"(스트레스, 행복 등)을 가질 수 있습니다.

는하지만 정확하게 다른 항목과 수준을 연결하고 전류 레벨에서 무엇을 설정하는 중간 모델이있을 필요가있는 다른 3

내 수준을 연결하는 방법을 모르겠어요.

나는 has_many의 일종이 필요합니까? 그것을 통해 다형성이 있습니까? 그리고 어떻게 지구상에서 그것을 설정합니까? 필요한 다른 유형의 연관이 있습니까?

enter image description here

는 내가 전에 비슷한 질문을하지만 난 할 노력했다 설명의 철저 끔찍한 일을했다, 그래서 이것은 내 두 번째 시도이다.

class Level < ActiveRecord::Base 
    belongs_to :item_level 
end 

것은 당신이 엄격 할 경우

class ItemLevel < ActiveRecord::Base 
    # levelable_id :integer 
    # levelable_type :string(255) 
    belongs_to :levelable, :polymorphic => true 
    has_many :levels 
end 

class Musician < ActiveRecord::Base 
    has_many :levelables 
end 

class Musician < ActiveRecord::Base 
    has_many :levelables 
end 

class Manager < ActiveRecord::Base 
    has_many :levelables 
end 

레벨 만 ItemLevel이와 관련된 것을 알 필요가있다 :

답변

1

ItemLevels는이 연결된 알고 유형을 필요로 , 당신은 ItemLevel과 타입이 인스턴스화되어 있는지 확인하기 위해 레벨 모델에 몇 가지 유효성 검사를 넣어야합니다.

관련 문제