Я запускаю следующее в своем контроллере Jobs.cakePHP 2.0 find ('threaded') Issue
$this->set('jobs', $this->Job->find('threaded', array('conditions' => array('Job.id' => 20))));
Сейчас на мой взгляд, я отображая $jobs
в моей петле штрафа foreach
, но мой вопрос я детей связан с Job.id с использованием поля parent_id. Я знаю, что ссылка работает нормально, потому что я вижу детей в массиве.
Array
(
[0] => Array
(
[Job] => Array
(
[id] => 20
[parent_id] => 0
[rght] => 2
[lft] => 1
[client_id] => tasd
[contact] => asdf
[email] => sdf
[address] =>
[lat] =>
[long] =>
[user_id] => 1
[request_type_id] => Electrical
[date_start] => 0000-00-00 00:00:00
[date_end] => 0000-00-00 00:00:00
[date_complete] => 0000-00-00 00:00:00
[date_closed] => 0000-00-00 00:00:00
[status] => completed
[brief_desc] => aasdf
[desc] => asdfasdf
[cost_est] => 3434.00
[cost_actual] =>
[created] => 2011-12-18 20:39:24
[modified] => 2011-12-18 20:39:24
)
[Children] => Array
(
[0] => Array
(
[id] => 21
[parent_id] => 20
Я хотел бы показать дочерние задания под родительскими заданиями. Точно как работают вложенные комментарии. Любая помощь будет большой.
Спасибо Dakota. Кажется, что массив, который я возвращаю, теперь больше похож на массив, который мне нужно использовать. Каков наилучший PHP-код для чтения этого массива. Нормальный оператор foreach, который я использую, не работает вообще. – AshHimself
Вам нужно будет использовать рекурсивную функцию (в идеале). Посмотрите на ссылку, которую опубликовал chetan patel. Это может быть очень устаревшим, но класс-помощник должен дать вам хорошее представление о том, что делать (поиск страницы для ** app/views/helpers/tree.php **) – Dakota
Этот ответ хорош, и я знаю, что это старый, но круглые скобки недостаточны для закрытия заявления, и я считаю, что вторая находка должна быть «резьбовой», а не «первой», –