2012-09-15 5 views
0

나는 테이블에 CakePHP 1.3 여러 트리를 가지고 moveupmovedown을 위해 내가CakePHP의 여러 범위

$this->Category->Behaviors->attach('Tree', array(
     'scope' => array(
      'Category.parent_id' => $node['Category']['parent_id'], 
     ), 
    )); 

뿐만 아니라 또한 type로 분류되어 기록 그래서 나는 또한 필요

  'Category.type' => $node['Category']['type'], 

및 설정 등 이것은 어떤 차이도 만들지 않습니다. 여기

내 데이터의 샘플입니다 :

id | parent_id | lft | rght | Title | type 
1 | null  | 1 | 4 | Cat1 | categoory 
2 | null  | 5 | 20 | Cat2 | categoory 
3 | 2   | 6 | 13 |Cat2.1 | categoory 
4 | 2   | 14 | 15 |Cat2.2 | categoory 
5 | 2   | 16 | 17 | img1 | image 
6 | 1   | 2 | 3 | img1 | image 
7 | 2   | 18 | 19 | img2 | image 
8 | 3   | 7 | 8 | Post1 | post 
9 | 3   | 9 | 10 | Post2 | post 
10 | 3   | 11 | 12 |Cat2.1.1| categoory 
+0

생성 된 SQL 쿼리는 무엇입니까 – Dave

답변

1

당신은 '유형'필드 없다 'PARENT_ID'필드에 범위를 지정해야합니다. 작업 할 하위 트리에 따라 매번 범위를 설정해야합니다.

$this->{$this->nodeType}->Behaviors->attach('Tree', array(
    'scope' => array(
     'Category.type' => $this->nodeType, 
    ), 
)); 
+0

감사합니다. 항상 더 복잡한 솔루션을 찾고 있습니다. 내 잘못이야 –