2011-03-29 3 views
1

Cake 1.2에서 1.3.8로 업그레이드하고 ExtendedAssociations 동작을 사용 중입니다. 우리가 겪고있는 문제의CakePHP : HABTM이 habtmDelete 호출을 제대로 수행하지 않음

하나는 stores_modules를 통해 모듈에 HABTM 관계가 우리의 스토어 모델입니다.

데이터를 가져 오는 모든 좋지만, 1.3.8로 이동 한 문제는 도입 한 것으로 보인다 우리는 스토어에서 모든 모듈을 삭제하고자 할 때 - 상점 모델에서

$this->habtmDeleteAll('Module', $this->id);

문제는 (가, 먼저 stores_modules을 선택하는 것입니다 삭제하는 것을 볼로)이 다음과 같은 SQL 쿼리를 생성하는 것입니다

SELECT StoresModule . module_id FROM stores_modules AS StoresModule WHERE StoresModule . store_id = 1 AND Module . system_default = 0

_

2011-03-29 18:27:46 Warning: Warning (512): SQL Error: 1054: Unknown column 'Module.system_default' in 'where clause' in [/usr/lib/cakephp_1.3.8/cake/libs/model/datasources/dbo_source.php, line 684]

는 그래서 .. 문제가 위의 SQL 문은이 모듈 테이블에 가입 추가되지 않는 것입니다 나타납니다 따라서는 Module 잘 수 없습니다. system_default

이에 어떤 도움이 좋을 것, 그것은 정말 날은 난처한 상황에 빠진 있어요 :)

크리스.

+0

1.2-> 1.3.8, 아마도 몇 가지 변경 사항이 있습니까? – benjamin

답변

0

잘 모르겠지만 모델을 올바르게 호출하지 않는 것 같습니다. 관련 모델 레코드를 모두 삭제해야하는 경우 다음과 같이하십시오.

$this->Store->Modules->deleteAll(array('Store.id' => $id), true, false); 

테스트하지 않았습니다!

관련 문제