Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
dRmx 12.09.2003 01:10 / 12.09.2003 01:11
Решил я помучаться, и видимо опять придется быть ламером, т.к. вроде бы на ровном месте спотыкаюсь. Делаю пример. http://www.parser.ru/examples/trees/ — построение древовидных структур на примере простенького форума. Прочитал я DISCLAIMER. Делаю. Начал с того, что прочитал еще все остальное. В глаза явных ошибок не бросилось. (Может кто-то усмехнется, и не будет дальше читать даже, говоря: «Ну придурок», но мне пофиг — я учусь.) Копирую все подряд, ожидая каким же будет первый мат. При плагиате кода@main[] ^MAIN:pSQL.server{ # достаем не более 20 корневых сообщений (parent_id == 0) $rootMessages[^getMessagesByParent[0;20]] # достаем все сообщения в тредах, которые мы только что достали $messages[^getMessagesByThread[$rootMessages]] # собственно выводим все данные о сообщениях в виде дерева ^printMessagesByParent[$messages;0] }возникают вопросы: во-первых, что такое server, понятно что утка, но что должно быть на его месте? Во-вторых, почему pSQL, а не SQL? А ошибка вылетает
(void) not a method or junction, can not call itТипа метод не определен. Как нет, если он есть:
getMessagesByParent
@getMessagesByParent[parent_id;limit] $result[^table::sql{ SELECT forum_message.forum_message_id, parent_id, thread_id, title, author, email, dt_published, forum_message_body.forum_message_id AS is_not_empty FROM forum_message ^MAIN:pSQL.left_join[from;forum_message_body;forum_message.forum_message_id = forum_message_body.forum_message_id] WHERE ^MAIN:pSQL.left_join[where;forum_message_body;forum_message.forum_message_id = forum_message_body.forum_message_id] ^if(def $parent_id){parent_id = ^parent_id.int(0) AND} is_published = 1 ORDER BY dt_published }[^if(^limit.int(0)){$.limit(^limit.int(0))}]]