• Интересные ссылки № 185

    Так и не прочитал эту статью «Should I Be Worried About Scaling», когда зашел, там была ошибка: «Warning: mysql_pconnect (): Too many connections...» это так должно быть?;)

  • Ты профи?

    Философф;)

  • Weekly linkdump #164

    Спасибо, Макс, особо улыбнула ссылка про комменты на Stack Overflow. Видео с acts_as_conference 2009 интересное.

  • Куда податься C++ разработчику

    Константину, как автору заметки, зачет. Хоть я со многим не согласен, но интересную дискуссию ты поднял. Спасибо.

  • Как стать Open source-подрядчиком

    А мне вот понравилась статья. Толково этот Эван говорит. Спасибо, Янина, за качественный перевод.

  • Закрытие программы для авторов блога

    4matic:

    2) Отсутствие свободного времени.что ты вкладываешь в фразу «программа делим прибыль сайта себя не оправдывает». Мне интересен опыт, потому как сам бьюсь над тем, что бы заставить людей просто делиться опытом.

    У меня такая же (2) проблема. Скорее, времени нет чтобы найти что-нибудь ексклюзивное и написать по этой теме оригинальную статью. Опытом можно делится и без денежного вознаграждения, было бы желание. А без желания — только рушники получаются:) Voituk Vadim

    2. Отойти от политики эксклюзивности контента.

    Я думаю, что если человек захочет поделится с ДОУ заметкой, опубликованной в своем блоге — то это будет очень не плохо. Это, конечно, не значит, что нужно передерать все заметки с Хабры:) А еще, мне кажется, что ДОУ не хватает форума.

  • Использование языка Python для разработки научно-технического программного обеспечения

    >> особенно это актуально для Perl, где написанный код понимает только его автор, и то обычно не дольше 15 минутХватит на Перл то гнать. Если ты Перл видел 2 раза в жизни и чего-то в синтаксисе не понимаешь, то не надо писать что все остальные не понимают своих и чужих исходников. Не хочу разводить тут холивар, но тебе нужно к относится к «не-Питонам» и, соответственно, к людям которые на этих «не-Питонах» пишут с бОльшим уважением.

  • Автоматизация тестирования. Заметка о таинственном SilkTest

    В свою очередь, хочу поблагодарить Вас, Геннадий и других Авторов за то за время и силы, приложенные на создания замечательного руководства по SilkTest. Это была и есть настольная книга для многих моих коллег.

  • Программирование в форме диалога. Часть III. Реализация диалога, будущее

    Уважуха аффтару за многа букафф:)) Но, картинок очень не хватает.

  • Catalyst — Perl веб-фреймворк в лучших традициях MVC

    С русскоязычной докой увы... не сложилось: (Можете поискать книгу, которая была рекомендована в заметке, с ее помощью можно научится работать с Каталистом без особых знаний английского: очень интересно, просто и понятно написана.

  • Catalyst — Perl веб-фреймворк в лучших традициях MVC

    Ну, есть сообщество: http://community.livejournal.c.../ но, оно довольно слабое. Я обычно ищу информацию на англоязычных ресурсах.

  • Catalyst — Perl веб-фреймворк в лучших традициях MVC

    >> Can’t locate Catalyst/Plugin/Authentication/Store/DBI.pm in @INCЭто значит, что все таки Catalyst: Authentication: Store: DBI у вас нет.Попробуйте еще раз: $> sudo cpan Catalyst: Authentication: Store: DBIНе забудьте внести этот модуль в Makefile.pl вашего проекта, для того, чтобы он ставился автоматом в будущем. >> чтобы поставить надо знать что такое Session: Store: DBI — это модель, >> контроллер или view? Нет, это Плагин. Он будет работать абсолютно прозрачно, когда вы его настроете правильно. Он самостоятельно будет сохранять Куки и логинить пользователя, когда вы вызовете $c-> authenticate ({name => $name, password => $pass}) >> ЗЫ: каталист с певрого раза не очень понравился, так как все равно >> всё надо переделывать под свои нужны и телепатировать с >> разработчикамиМне тоже, по началу, не понравился. Да, есть немного сложностей и запутанностей. Но, после того как я прочитал книгу, порылся в исходниках проектов на Каталисте — мне стало ясно что, где и как происходит, и как это использовать.Кстати, могу рекомендовать следующие модули, к которым я пришел, перепробовав кучу других: Rose: DB: Object — гениальный ORM, потому что простой, понятный и удобный. http://search.cpan.org/perldoc... FormFu: http://search.cpan.org/perldoc...Увесистый, но очень удобный.

  • Catalyst — Perl веб-фреймворк в лучших традициях MVC

    >> ну такое как каталист можно написать на много «ярче» с использованием магии, функции tie>> короче, так какие вы приемущиства увидели от catalyst? я не нашел покаХм..., а что значит «ярче», в вашем понимании этого слова? Преимуществ Каталиста по сравнению с чем? Не совсем понимаю, поэтому отвечу, основываясь на собственных предположениях. Да. Каталист это не простой скриптик, в теле которого обрабатываются данные и запросы к базе данных, реализуется так называемая «бизнес-логика», которая и реализует ту цель, ради которой и задумывалось создания скрипта, и создает HTML отчет. При этом HTML теги мешаются с кодом бизнес-логики и и запросами к БД.Я не говорю, что все такие скрипты плохие. Нет, они могут достаточно легко поддерживаться и эффективно решать поставленную задачу. Такие скрипты не плохие, пока не начинают разрастаться. В конце концов, они могут превратится в мешанину из HTML, SQL и Perl. И я не с неба беру эти слова. Я опираюсь на собственный опыт.Если сравнивать Catalyst с другими существующими Перловыми фреймворками, то все остальные либо слишком молоды (Mojo), либо слишком мертвы (Maypole), либо недостаточно эффективны для решения моих задач (CGI: Application). Кстати, можете посмотреть перечисленных фреймворки, возможно какой-нибудь вам подойдет. Как веб фреймворк, Каталист мне нравится тем, что у него есть довольно активное сообщество. Новые модули для Каталиста обновляются довольно часто, и в принципе, на CPAN можно найти довольно много готовых решений. Я не трачу время на разработку собственных велосипедов. Некоторое время уходит, на то, чтобы разобраться с интересующим меня модулем, но оно в разы меньше, чем если бы я писал что-то с нуля. Каталист дает свободу. Само ядро каталиста (то, что Catalyst-Runtime) содержит минимум библиотечного кода, который не навязывает вам чем нужно пользоваться для работы с БД или рендерить HTML/XLS/PDF. Каталист — это каркас. Удобный объектно-ориентированый каркас для вашего приложения. А то, как я буду работать с данными и какие модули использовать — это уже на мое усмотрение. Мне нравится такая свобода. Я не говорю, что Каталист сверх легкий для изучения фреймворк, и то что он сверх качественно и понятно документирован. Нет. Нужно разбираться, читать мануалы и рыться в исходном коде. Но, оно того стоит. По крайней мере, я в этом уверен.

  • Catalyst — Perl веб-фреймворк в лучших традициях MVC

    >> какой контроллер отвичает за страницу loalhost: 3000 (без loalhost: 3000/list) не могу найтиCMyApp: Controller: Root и экшен index

  • Catalyst — Perl веб-фреймворк в лучших традициях MVC

    http://recoder.livejournal.com/ говорит: 2.02.2009 в 14: 29>> Вот как раз то, что Catalyst даёт свободу и является одновременно его сильной и слабой сторонами.>> Многим разработчикам хотелось бы для каждой проблемы видеть простое и единственное решение.Мне лично намного важнее выбрать из нескольких вариантов самый наилучший для конкретной задачи. Простые решения есть, но разве плохо, что они не единственные? Да, конечно же реализаций шаблонизаторов, ORMов, и средств валидациирендеринга форм целая куча. Но, самые популярные это: ORM: Class: DBI (CDBI), DBIx: Class (DBIC), Rose: DB: Object (RDBO) Шаблонизаторы: HTML: Template, HTML: Mason, Template-Toolkit. Средства обработки и валидации форм: Form: Processor, CGI: FormBuilder, HTML: FormFu, Rose: HTML: Form. Это самые популярные решения. И я думаю, что их не так уж много. Но, этот список можно еще сократить: Учитывая то, что DBIC и CDBI очень похожи по функционалу и подходу, и при этом DBIC по мощьнее будет, то Class: DBI вычеркиваваем. RDBO — это хорошая альтернатива DBIx: Class. Сам сейчас пишу на RDBO. Какой самый легковесный многофункциональный и просто красивый и удобный шаблонизатор? — Template-Toolkit. Form: Processor это попытка упростить Rose: HTML: Form. Честно говоря, не знаю стоит ли что вычеркивать. Но, вот CGI: FormBuilder можно вычеркнуть, так как HTML: FormFu обладает схожим, и более продвинутым и гибким функционалом. Что остается? ORM: DBIx: Class, Rose: DB: Object (RDBO) Шаблонизаторы: Template-Toolkit. Средства обработки и валидации форм: Form: Processor/Rose: HTML: Form, HTML: FormFu. Надежный и мощный союз для создания веб приложения. Все эти модули интегрируются с Каталистом. На самом деле решений для Каталиста много, но самые лучшие, на мой взгляд, перечислены выше.

  • Catalyst — Perl веб-фреймворк в лучших традициях MVC

    Попробуйте так: $c-> user-> get-> {username}

  • Catalyst — Perl веб-фреймворк в лучших традициях MVC

    Не могу сказать точно, почему дерево создается только один раз. Возможно, вы используете глобальные переменные для хранения экземпляра объекта DBIx: Tree. Возможно, это баг самого модуля. В любом случае, да, из DBIx: Tree нужно сделать отдельную модель. Рекомендую воспользоваться Catalyst: Model: Adaptor. Попробуйте сделать модель, и возможно, проблема решится сама собой;) На счет mod_perl’a и FCGI, посмотрите на indigoPerl или XAMPP, там уже предустановленны и сконфигурированы такие вещи как mod_perl, FastCGI, SSL и еще много чего полезного...

  • Catalyst — Perl веб-фреймворк в лучших традициях MVC

    1, 2 $dbh нужно передавать через stash либо всегда пользоватся $c-> model (’DBI’) -> dbh; т.е.

    sub begin : Private { my ($self, $c) = @_; my $dbh = $c->model('DBI')->dbh; <strong>$c->stash->{'dbh'} = $dbh;</strong>...}sub end : Private { my ($self, $c) = @_; $c->forward('MyApp::View::HTML::Template');<strong> my $dbh = $c->stash->{'dbh'}; $dbh->disconnect();</strong>}

    А на счет примеров, то вот: http://github.com/jrockway/Вот исходники его блога. Это вам может помочь. http://github.com/jrockway/ang...Прямо на Гитхабе можно поискать проекты на Каталисте. Вот еще сайт. Там можно загрузить его исходники (внизу) http://godcore.org.ua/и блог: http://vti.godcore.org.ua/Вот еще проект: http://handelframework.com/blo.../Вот его исходники: http://github.com/claco/handel...Вот про Git

  • Catalyst — Perl веб-фреймворк в лучших традициях MVC

    1, 2 $dbh нужно передавать через stash либо всегда пользоватся $c-> model (’DBI’) -> dbh; т.е. sub begin: Private { my ($self, $c) = @_; my $dbh = $c-> model (’DBI’) -> dbh; $c-> stash-> {’dbh’} = $dbh; ...} sub end: Private { my ($self, $c) = @_; $c-> forward (’MyApp: View: HTML: Template’); my $dbh = $c-> stash-> {’dbh’}; $dbh-> disconnect (); } А на счет примеров, то вот: http://github.com/jrockway/Вот исходники его блога. Это вам может помочь. http://github.com/jrockway/ang...Прямо на Гитхабе можно поискать проекты на Каталисте. Вот еще сайт. Там можно загрузить его исходники (внизу) http://godcore.org.ua/и блог: http://vti.godcore.org.ua/Вот еще проект: http://handelframework.com/blo.../Вот его исходники: http://github.com/claco/handel...Вот про Git

  • Catalyst — Perl веб-фреймворк в лучших традициях MVC

    Я какую-то фигню в 36-м комментарии сказал.: (Хотел показать, что нужно «все глобальное» передавать через stash, а сам допустил грубую ошибку. Если у вас есть класс обвертка над DBI, то используйте его функции. Catalyst: Model: DBI есть метод disconnect. Поэтому нужно использовать его. Кроме того, в деструкторе Catalyst: Model: DBI есть disconnect! Так что он по любому выполнится при завершении работы приложения. Кроме того, $dbh лучше не сохранять в stash. Дело в том, что в случае Catalyst: Model: DBI при вызове метода dbh выполняется некоторый полезный код, который при разрыве соединения с БД пытается его восстановить:

    package Catalyst::Model::DBI;# … { … Skip ... } =item $self->dbhReturns the current database handle.=cutsub dbh {return shift->stay_connected;}

    Так что будьте осторожны с сохранением значения $dbh. Что же касается вопроса по поводу ACL, то ответить не могу, так как в данном случае необходим исходный код приложения.

← Сtrl 12 Ctrl →