Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
kechinoff 11.01.2007 18:22
Здравствуйте. Хотелось бы услышать комментарий.$list[^CreateCategoryTree[3]] # Создает таблицу всех категорий, которые являются дочерними выбранной (ID) на неопределенную глубину # Не спрашивайте, почему Tree - переделывалось уже несколько раз, раньше назначение другое было @CreateCategoryTree[ID] $result[^table::create{ID}] ^result.append{$ID} ^result.join[^Catalog:GetChildByParent[$ID]] # Вызывает метод, который добавляет в таблицу те категории, которые принадлежат выбранной (ID) # Назначение описано строкой выше. Выбирает детские (дочерние) категории, прокручивает их, вызывает сам себя и добавляет результаты в табличку. @GetChildByParent[ID] $result[^Catalog:Categories[$ID]] # См. ниже ^result.menu{ ^result.join[^Catalog:GetChildByParent[$result.ID]] } # Выбирает категории, у которых ParentID = $ID (которые являются дочерними к выбранной. На один уровень) @Categories[ID] $result[^MySQL:Query[select ID from Category where ParentID = $ID]]Сделал, вроде работает, но до конца осмыслить - почему работает, пока не получается.
select from Catalog where Category in ( ^list.menu{$list.ID}[,] )Спасибо за возможные ответы.