다형성 연관에 특정 객체가 포함되어 있는지 확인하는 방법을 찾고 있습니다.ROR : 다형성 연관에 객체 포함 확인
내 예
language.rb는 (사용 가능한 언어 목록이 본질적으로)
has_many :user_languages
user_language.rb
belongs_to :language
belongs_to :speakable, :polymorphic => true
user.rb입니다
has_many :languages, :class_name => 'UserLanguage', :as => :speakable
이제 사용자에게 특정 언어가 있는지 확인하고 싶습니다. 내가 가진 생각은
u = User.find(1)
l = Language.find(1)
u.languages.include?(l)
의 형태로 include?
방법을 사용하는 것입니다하지만 항상 u.languages
하지만 false
는이 검사를 준비하는 적절한 방법이 될 것입니다 무엇
#<UserLanguage id: 1, language_id: 1, speakable_id: 1, speakable_type: "User">
감사합니다. 문제는 바로 여기에 당신이 UserLanguage
에 class_name
을 설정
has_many :languages, :class_name => 'UserLanguage', :as => :speakable
때문에 거짓말처럼
감사합니다. 내가 원했던 것을 정확히 수행한다! – paulus