2011-12-01 7 views
0

연관 모델 및 링크 객체의 고전적인 예제를 모델링하려고합니다. 아래 이미지는 연관 클래스와 링크 객체를 보여주는 객체 다이어그램을 보여주는 클래스 다이어그램을 설명합니다.레일에서 연관 클래스 모델링 - 학생 등록 ​​예제

Association class and link objects

이미지 일부를 학생, 메리 존스를 나타내는 오브젝트 다이어그램을 보여주고, 그녀가 2010 년 가을 학기에 등록 한 과목 : MKT350 및 MIS385. 클래스 다이어그램의 연관 클래스에 해당하는 링크 객체는 객체 다이어그램에 있습니다. 이 예에서는 두 개의 코스 등록을 캡쳐하면서 등록 협회 클래스에 대한 두 개의 링크 오브젝트 (등록으로 표시됨)가 있습니다.

등록 협회 클래스 입니다 : 등록 링크가

객체입니다

내 질문

+0

그래서, 무엇이 문제입니까? 코드를 작성하려했으나 문제가 있습니까? ActiveRecord 협회 가이드를 읽었습니까? http://guides.rubyonrails.org/association_basics.html – miaout17

+0

예, 레일스 가이드의 연관성 섹션을 읽었으므로 관련 클래스를 다루는 곳을 볼 수 없습니다. 이 가이드의 대부분은 두 모델 간의 연관성에 대해 설명합니다. 나는 이것이 약간 다른 것이라고 믿는다. – Mutuelinvestor

+2

2.4 및 2.6 절을 읽으십시오. 그것들은 다 대다 연관을위한 것이다. – miaout17

답변

1

협회의 기초에 대한 A Guide to Active Record Associations, 특히 has_many :throughhas_and_belongs_to_many을 읽어 보시기 바랍니다 내가 레일/액티브이 같은 모델 얼마나입니다 섹션.

has_and_belongs_to_many은 다 대다 연관을 제외하고는 다른 정보가 필요하지 않은 경우에만 적합합니다. 조인 테이블에 대한 모델 클래스를 작성할 필요가 없습니다. 확실하지 않은 경우 has_many :through을 대신 사용하십시오.

귀하의 경우에는 has_many :through 연결을 사용할 수 있습니다. 등록 수업에서는 ActiveRecord validation을 사용하여 수혜 자격을 확인할 수 있습니다.