CakePHP에서 추가 조건을 제공하면서 HABTM 관계를 기반으로 테이블을 쿼리하려면 어떻게해야합니까?
-
03-07-2019 - |
문제
CakePhp에서 어떻게 할 수 있습니까? 두 개의 테이블을 사용하고 있습니다 (regions
그리고 safaris
) 다수의 관계가 있습니다. 테이블은 다른 테이블로 연결됩니다 regions_safaris
(필드와 함께 region_id
& safari_id
). 나는 모든 것을 가져오고 싶다 safaris
주어진 기준과 5 일의 주어진 지역에서 주어진 기준을 충족합니다. 이것은 CakePHP에서 구현되어야합니다
해결책
점마,
너무 빨리 게시하는 것을 너무 빨리 저항하십시오.
자세한 내용은 CakeBook Has and-Belongs-to-Many 관계를 참조하십시오. 정확히 당신이 묘사하는 것입니다. 보다 http://book.cakephp.org/view/83/hasandbelongstomany-habtm
요컨대, 케이크 모델이 올바르게 설정되었다고 가정하면 (지역, 사파리 및 지역간에 HABTM 관계가 설정되어 있고, 모델에서 var $ hasandbelongstomany 배열의 '공동'지수를 확인) : 당신은 다음을 수행 할 것입니다.
class SafariModel extends AppModel
{
var $name = 'Safari';
var $hasAndBelongsToMany = array( 'Tag'=>array( ..., 'joinTable'=>'regions_safaris', ... );
function findSafaris( $duration = 5, $region = null )
{
return $this->find('all', array('conditions'=>array('Region.region_name'=>$region, 'Safari.duration'=>$duration) );
}
... // rest of class
}
제휴하지 않습니다 StackOverflow