2015-05-29 2 views
0

Я должен использовать Treelist, потому что левое и правое поля. Я не нашел способ ограничить результат, потому что мне нужно только верхний элемент:cakephp 2.x использование предела в treelist

$lis = $this->Record->find('list', array(
    'conditions' => array('Record.pnumber' => $id), 
    'fields' => array('Record.state_id'), 
)); 

$options = array('NOT' => array('State.id' => $lis)); 

//How can i use limit here? I only need to get the first element (i have to use the tree structure because the lft field store the arrengment in this case) So 'limit'=>1 but how and where? 

$statelists = $this->Record->State->generateTreeList(
    $options, null, null, null, null 
); 

Пожалуйста, я не могу использовать обычный find('first', $options) путь, потому что мне нужно древовидную структуру. Я прочитал в Api, что могу использовать условия, подобные поиску, но предел не является частью условий.

+0

попробуйте добавить ограничение на месте четыре нулевого места, как '$ вариантов, NULL, NULL, NULL, limit' –

+1

Пожалуйста, также см. https://github.com/cakephp/cakephp/pull/6704 - upvote, если вы сочтете это полезным. – mark

ответ

0

я вынужден слишком много в treelist.Insted использования нормального списка:

$statelists=$this->Record->State->find('list',array(
      'conditions'=>$options, 
      'fields'=>array('State.name'), 
      'order'=>array('State.lft'), 
      'recursive'=>0, 
      'limit'=>1 
        ) 
      );