2014-12-02 2 views
0

모델 코스와 CourseUnitRole 모델이 있습니다.has_many에서 연관의 이름을 바꿉니다.

과정에는 많은 과정 단위 역할이 있습니다.

나는 정의 :

has_many :course_unit_roles 

그래서 course.course_unit_roles 내가 필요한 모든 걸 제공합니다.

하지만 연결을 다음과 같이 변경하고 싶습니다. course.unit_roles.

나는 추가하려고 :

has_many :unit_roles, :through => :course_unit_roles 

를하지만 나에게 오류를 제공합니다.

어디에 문제가 있습니까?

+1

'has_many : unit_roles, class : CourseUnitRole' –

+0

class_name이어야합니다. Thx –

답변

0

has_many의 이름을 바꾸려면 이름을 바꾸고 상호 작용을 수행 할 레코드의 클래스 이름을 암시 적으로 지정해야합니다. 따라서 :

has_many :unit_roles, class_name: :CourseUnitRole 
+0

'has_many : unit_roles, class_name : 'CourseUnitRole'' – ptd

+0

키는'class :'는'class_name :'이어야합니다. – ptd

관련 문제