에서 일하고 통해 나는 다음과 같은 has_many이has_many는 : 상황을 통해 : 한 방향으로 만
u = User.first
t = Term.first
u.terms << t
그때 성공적으로 u.terms
을 실행할 수 있습니다
class User < ApplicationRecord
has_many :term_enrollments, foreign_key: 'builder_id'
has_many :terms, through: :term_enrollments
end
class TermEnrollment < ApplicationRecord
belongs_to :term
belongs_to :builder, class_name: 'User'
end
class Term < ApplicationRecord
has_many :builder_term_enrollments, class_name: 'TermEnrollment', foreign_key: 'builder_id'
has_many :builders, through: :builder_term_enrollments, source: :builder
end
성공적으로 다음은 term_enrollment을 만듭니다.
=> #<ActiveRecord::Associations::CollectionProxy []>
내가 잘못 source
를 사용하고 있지만이 방법을 잘 모르겠어요 확신 : 문제는 내가 t.builders
을 실행하면, 난 빈 연결을 얻을 수 있습니다. 이 문제를 어떻게 해결할 수 있습니까?
당신이, inverse_of'가 아닌'source''후있어 인구 협회의 양쪽 끝을 가지고 합리적으로 확신 – meagar