| Новости | FAQ | Авторы | Документация | В действии | Библиотека |
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
G_Z 03.11.2011 20:22 / 03.11.2011 20:23
то можно выбирать рекурсивно.$item_id(5)
^crumbs($item_id)
@crumbs[item_id][id;crumbs;item]
$id(^item_id.int(0))
$crumbs[^table::create{id name}]
^while($id){
$item[^table::sql{
SELECT id, par_id, name
FROM cg_adr
WHERE id = $id
}]
^crumbs.append{$item.id $item.name}
$id($item.par_id)
}
^crumbs.sort(^crumbs.line[])[desc]
$result[^crumbs.menu{^if($crumbs.id eq $item_id){<strong>$crumbs.name</strong>}{<a href="/$crumbs.id">$crumbs.name</a>}}[ / ]]Опять же, если в дереве не десяток тысяч элементов, возможно, выбрать его целиком и иметь под рукой в нужном виде будет проще, нежели поддерживать денормализованные данные.