2010-11-30 3 views
1

나는 HTBTM의 relantionship에서 다음 데이터베이스 테이블 이름이있는 경우 :HABTM는 HABTM 관계로 테이블을 조인

**dressess** 
id 

**dressess_categories** 
id 
dress_id 
category_id 

**categories** 
id 

내가 HABTM 관계를 데이터베이스 테이블 이름을 생성해야 할이 dressess_categories에 필요한 방법 예 :

**dressess_categories** 
id 

**colors_dress_categories** <--- It is named right? 
id 
dress_category_id <--- It is named right? 
color_id 

**colors** 
id 

미리 감사드립니다.

dresses_categories /* incorrect */ 
categories_dresses /* correct */ 

을 이제 손에서이 문제에 대해 : 내가 제대로 질문을 이해한다면, 당신이하려고하는

답변

1

우선, 조인 테이블은 CakePHP의가 자동적으로 인식 할에 대한 알파벳 순서에서 모델 이름을 가질 필요 Color 모델과 다른 HABTM 관계에 사용되는 조인 테이블간에 HABTM 연결을 만드시겠습니까? 이건 불가능 해. (또는 그것이 그렇다면, 그것은 케이크 해킹 - 어 - thon 될 것입니다).

먼저 데이터베이스 테이블간에 관계가 있으므로 관계를 생각하지 마십시오. 관계는 CakePHP 모델들 사이에 정의되며, 테이블은 그것들을 움직입니다. 그래서 같은

Dress 
Category 
DressCategory 
Color 

정의 관계 : 해당 외래 키와

Dress   -> hasMany -> DressCategory 
Category  -> hasMany -> DressCategory 
DressCategory -> belongsTo -> Category, Dress 
DressCategory -> HABTM  -> Color 
Color   -> HABTM  -> DressCategory 

그리고 5 개 개의 테이블 :

dresses 
------- 
id 

categories 
---------- 
id 

dress_categories 
---------------- 
id 
dress_id 
category_id 

colors 
------ 
id 

colors_dress_categories 
----------------------- 
id 
color_id 
dress_category_id 
당신이이 작업을 수행하기 위해해야 ​​할 것입니다 것은 4 개 가지 모델을 만들 것입니다
+0

스티븐 감사합니다. 나는 내가 가까웠다는 것을 안다. – josoroma

+0

문제 없음! 다행히 도울 수있어. – Stephen