|  |

Есть дерево сообщений. Организованное, вестимо, в SQL.
Надо бы его отобразить в шаблон. Как это сделать рекурсивно с помощью TT, VIEW кувалды и чьей-то матери я понял.
Но.
1. Хочется как-то внятно контролировать количество показываемых сообщений 2. Хочется понять, как бы еще можно было сделать ЭТО.
Есть ли у кого идеи? Нечто о предвычислении размера ветки у меня есть, но пок
Инструментарий, есличто, Catalyst, DBIx::Class. DBIx::Class::Tree я, если честно, не понял. В ситуации, когда с деревом не нужно много манипулировать на изменение, не вижу от него большой пользы.
2 Comments | Post A Comment | Share | Flag | Link
Практика показала, что использование DBIx::Class не всегда оправдано — трудно писать сложные запросы, да и количество выполняемых им лишних телодвижений удручает. Среди альтернативных вариантов — использование DBI. Для него, естественно, на CPAN уже есть модель Catalyst::Model::DBI, однако её хелпер создаёт модуль, который (при работе с MySQL) не дружит с UTF-8. Что вполне поправимо: достаточно добавить в настройки подключения атрибут mysql_enable_utf8 и переопределить метод connect, добавив туда выполнение запроса SET NAMES utf8. Готовый вариант модели — https://gist.github.com/752990
9 Comments | Post A Comment | Share | Flag | Link
Приветствую. Старый Mechanize ставится также с ошибками: ( слет тестаCollapse )В результате - этот пакет считается недоступным и Catalyst - не ставится.
5 Comments | Post A Comment | Share | Flag | Link
Приветствую, содруги! Проапдейтил свой пост: http://community.livejournal.com/ru_catalyst/16984.htmlМожет кто чего подскажет? Лучше там, этот пост потом грохнем... PS. VirtualBox поставил, пока не разобрался, но
4 Comments | Post A Comment | Share | Flag | Link
Разбираясь в старой, но живой проблеме (пути из нескольких частей - /вот/такие - превращались в частично - до последней части - дважды UTF'нутые) в MojoMojo, я нашел место сбоя.
Путь передается ЧАСТИЧНО в %-кодированном виде (/%D0%B2%D1%82%D0%BE%D1%80%D0%BE%D0%B9_%D1%81%D1%82%D0%B5%D0%BD%D0%B4/чтототакое), возможно, это какие-то причуды javascritpt'а. В любом случае, %D0 и так далее воспринимается как НЕ UTF, и перекодируется в UTF. Результат получается достаточно страшен.
На этом моменте мой субботний запас мозга истощился полностью, и я спрашиваю совета более других людей.
Проблема проявляется в районе 176 строки MojoMojo::Schema::ResultSet::Page.
Post A Comment | Share | Flag | Link
Приветствую! UpdatedПод StrawBerry имею сейчас: --- > cpan Task::CatalystDatabase was generated on Mon, 06 Dec 2010 06:49:29 GMT CPAN: Module::CoreList loaded ok (v2.36) Catalyst is up to date (5.80029). ( Read more...Collapse )
20 Comments | Post A Comment | Share | Flag | Link
Пытаюсь переносить каталистовое приложение на новый сервер. Приложение должно читать свой конфиг из YAML-файла. При попытке запуска тестового сервера получаю сообщение об ошибке: Error parsing /path/to/appname.yml: YAML::XS::Load Error: The problem:
mapping values are not allowed in this context
was found at document: 1, line: 9, column: 11 Похоже, YAML::XS::Load ругается на строки: rev: $Rev: 2211 $ date: $Date: 2010-05-04 17:27:58 +0600 (вт, 04 май 2010) $
При этом скрипт perl -0777 -n -MYAML -MData::Dumper -e 'my @data=Load($_); print Dumper(@data)' appname.yml
успешно читает такой файл: $VAR1 = { ... 'rev' => '$Rev: 2211 $', А скрипт, где -MYAML заменено на -MYAML::XS — нет. Вроде, данные, о которые споткнулся YAML::XS::Load, мне не нужны — пока закомментировал их. Но сам факт такого поведения мне не нравится :-\ ОС в обоих случаях почти одна и та же — FreeBSD (правда, разных версий). YAML — 0.68 и 0.71. На старом сервере YAML::XS не установлен.
2 Comments | Post A Comment | Share | Flag | Link
Здравствуйте.
Моя задача: В базе данных в таблице есть поле типа SET. Хочется иметь для каждого элемента этого множества свой checkbox, которые были бы объединены в checkboxgroup.
В конфиг-файле формы я сделал такое поле: <elements> name flags type Checkboxgroup label Flags deflators "+xxx::yyy::flags" <options> value r_view label user can view </options> <options> value r_create label user can create </options> </elements>
xxx::yyy:flags - мой класс дефлятора, наследует от HTML::FormFu::Deflator. В него в качестве параметра поступает строка с флагами (например, "r_view,r_create"), установленными для данного row таблицы. Дефлятор должен сделать каждый чекбокс помеченным/непомеченным в зависимости от флагов.
Проблема: что бы я ни делал в этом дефляторе с чекбоксами, этого не видно при выводе формы. Похоже, нужно как-то заставить форму понять, что я в ней что-то поменял, только я не знаю, как. Дефлятор точно вызывается (проверял вставляя туда die) в процессе рендеринга темплейта.
Core дефляторы, которые выполняют похожую функцию (например, CompoundSplit), используют для каждого поля, которое они меняют, функцию $field->default(...). Но в checkboxgroup каждый чекбокс - это не field и вообще не класс, а просто хеш (не blessed). Так что не получается вызвать для каждого чекбокса функцию default.
Может, есть готовый пример на эту тему? Или какие-нибудь соображения? Возможно, я вообще не тем путём пошёл, и это нужно делать не через инфляторы/дефляторы, а как-то по-другому?
4 Comments | Post A Comment | Share | Flag | Link
5.80021 2010-03-03 23:02:01 - в этой версии сделаны нужные правки. uri_for нормально понимает unicode! Всем апгрейдиться!)
Post A Comment | Share | Flag | Link
Обрисую задачу. Есть файлы размером около 300-400 метров текста, их необходимо загружать в базу. Подскажите, плиз, как можно реализовать такой процесс (желательно фоновый) на каталисте? В архивах модулей нашел Catalyst::Plugin::Scheduler, как вариант, подойдет, но хочется чтоб задача ставилась при нажатии на кнопку.
4 Comments | Post A Comment | Share | Flag | Link
|
 |
|
 |
 |