| Новости | FAQ | Авторы | Документация | В действии | Библиотека |
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
tricord 11.07.2005 17:09 / 11.07.2005 17:10
Не могу построить раскрывающееся дерево (хочу изменить Мишин пример – там дерево строится уже раскрытым).@getParentsForIdHash[id]
$MessageById[^getMessageById[$id]]
$MessageByThread[^getMessagesByThread[$MessageById.thread_id]]
$parentsMessageByThread[^hash::create[]]
$str_hash[^MessageByThread.hash[forum_message_id]]
$pid($id)
^while($pid){
^parentsMessageByThread.add[
$.[$pid][$pid]
]
$pid($str_hash.[$pid].parent_id)
}Но оказалось что в хэш значения не сортируются.@getParentsForIdTable[id]
$MessageById[^getMessageById[$id]]
$MessageByThread[^getMessagesByThread[$MessageById.thread_id]]
$parentsMessageByThread[^table::create{forum_message_id parent_id thread_id}]
$pid($id)
^while($pid){
$MessageById[^getMessageById[$pid]]
^parentsMessageByThread.append{$MessageById.forum_message_id $MessageById.parent_id $MessageById.thread_id}
$pid($MessageById.parent_id)
}А вот со вторым шагом получилась загвоздка. Не могу построить дерево рекурсией. Нужна помощь в его построении.