[ANN] BeepBeep

8 views
Skip to first unread message

Dmitrii Dimandt

unread,
Jun 30, 2009, 6:31:09 AM6/30/09
to erlang-...@googlegroups.com
Ну, в общм, думаю, можно заявлять во
всеуслышание :)



BeepBeep — это простое веб-приложение на
Эрланге вдохновением для которого
послужили by Rails and Merb.

Оно следует принципу «соглашение
важнее конфигурации»(«convention over
configuration»). Это означает, что достаточно
следовать нескольким простым правилам
по расположению кода, чтобы связать
входящие от браузера запросы с
контроллерами и файлами представления.

BeepBeep построено поверх MochiWeb и ErlyDTL




Этот фрейворк давно уже пытаетя
вылупиться, просто ни у его автора,
Дейва Брайсона[1], ни у меня не было
времени над ним поработать

Оригинальная ветка BeepBeep'а находится здесь: http:/
/github.com/davebryson/beepbeep/
Правда, она довольно ильно отстала от
моих изменений (дожидаются approval'а автора): http:/
/github.com/dmitriid/beepbeep/

Есть даеж документация на http://
beepbeep.dmitriid.com/ (сайт сделан с помощью
BeepBeep)

В общем, можно уже поиграться и
посмотреть :)




[1] http://weblog.miceda.org/
[2] http://github.com/dmitriid/

Igor Artamonov

unread,
Jun 30, 2009, 6:48:42 AM6/30/09
to erlang-...@googlegroups.com
Поздравляю!
Выглядит многообещающе.

2009/6/30 Dmitrii Dimandt <dmit...@gmail.com>:

--
Igor V Artamonov | www.artamonov.ru | ICQ: 120170178 | Skype: splixed

Dmitrii Dimandt

unread,
Jun 30, 2009, 6:58:56 AM6/30/09
to erlang-...@googlegroups.com
Спасибо. Еще бы время на это все найти :)

astashov

unread,
Jun 30, 2009, 8:55:03 AM6/30/09
to Erlang в России
Щас вот дочитаю Армстронга, и попробую чего-нибудь на этом Beepbeep
поднять. :).
Пока выглядит самым многообещающим среди подобных фреймворков, имхо.

On 30 июн, 18:58, Dmitrii Dimandt <dmitr...@gmail.com> wrote:
> Спасибо. Еще бы время на это все найти :)
>
> On Jun 30, 2009, at 1:48 PM, Igor Artamonov wrote:
>
>
>
> > Поздравляю!
> > Выглядит многообещающе.
>

> > 2009/6/30 Dmitrii Dimandt <dmitr...@gmail.com>:


> >> Ну, в общм, думаю, можно заявлять во
> >> всеуслышание :)
>

> >> BeepBeep -- это простое веб-приложение на

Dmitrii Dimandt

unread,
Jun 30, 2009, 9:08:07 AM6/30/09
to erlang-...@googlegroups.com

Ну, сложно сказать :) Есть еще Nitrogen (http://
nitrogenproject.com/), Erlang Web (http://www.erlang-web.org/),
ErlyWeb (http://erlyweb.org/)... ;)

Но мы постараемся соответствовать
возложеным на нас надеждам :) Только
было бы время :)

Alexander Dergachev

unread,
Jun 30, 2009, 11:13:37 AM6/30/09
to erlang-...@googlegroups.com
Эх, когда же хоть один из перечисленных тобой проектов поднимится до
уровня чуть выше чем 'можно поиграться'...


--
With Best Regards,
Alexander Dergachev

Dmitrii Dimandt

unread,
Jun 30, 2009, 1:02:25 PM6/30/09
to erlang-...@googlegroups.com
Ну, ErlyWeb используется в Twoorl, а про Nitrogen
уже делали презентацию на Erlang Factory :)

Alexander Dergachev

unread,
Jun 30, 2009, 3:39:53 PM6/30/09
to erlang-...@googlegroups.com
Ну в копилку ErlyWeb можно еще добавить http://vimagi.com/... но непонятна его дальнейшая судьба... непонятно почему родная Erlang база Mnesia в ErlyDB так тольком и не реализована, так же не понятно, будет ли дальнейшее развитие MySQL и PostgreSQL... и вот таких "непонятно" очень много к сожалению...
Но из всех фреймворко я пробовал пока только его, и он в принципе мне нравится.. но вот эта неопределенность как-то настораживает :)

2009/6/30 Dmitrii Dimandt <dmit...@gmail.com>

Phil Pirozhkov

unread,
Jul 1, 2009, 5:21:07 PM7/1/09
to Erlang в России
Непонятности - на каждом шагу
Mnesia пугает якобы существующим лимитом 4гб на таблицу
MySQL и Postgres интересны только с точки зрения подключения уже
существующих баз. CouchDB сильно хорошо.
Django и Rails настолько круты и mature, что писать на эрланге то же
самое, что можно написать там, используя залежи хэлперов, решится не
всякий.
К тому же документации, в основном, маловато.
Но и Рим не сразу строился.

По поводу Nitrogen у меня не создалось впечатления, что сложные веб-
приложения на нём будет делать легко. Простые и очень динамичные-да.
Возможно, не доразобрался, ведь подход неординарный.

On Jun 30, 11:39 pm, Alexander Dergachev <cy6erbr...@gmail.com> wrote:
> Ну в копилку ErlyWeb можно еще добавитьhttp://vimagi.com/... но непонятна


> его дальнейшая судьба... непонятно почему родная Erlang база Mnesia в ErlyDB
> так тольком и не реализована, так же не понятно, будет ли дальнейшее
> развитие MySQL и PostgreSQL... и вот таких "непонятно" очень много к
> сожалению...
> Но из всех фреймворко я пробовал пока только его, и он в принципе мне
> нравится.. но вот эта неопределенность как-то настораживает :)
>

> 2009/6/30 Dmitrii Dimandt <dmitr...@gmail.com>


>
>
>
>
>
> > Ну, ErlyWeb используется в Twoorl, а про Nitrogen
> > уже делали презентацию на Erlang Factory :)
>
> > On Jun 30, 2009, at 6:13 PM, Alexander Dergachev wrote:
>
> > > Эх, когда же хоть один из
> > > перечисленных тобой проектов
> > > поднимится до
> > > уровня чуть выше чем 'можно
> > > поиграться'...
>

> > > On 6/30/09, Dmitrii Dimandt <dmitr...@gmail.com> wrote:
>
> > >> Ну, сложно сказать :) Есть еще Nitrogen
> > >> (http://
> > >> nitrogenproject.com/), Erlang Web (http://www.erlang-web.org/),

> > >> ErlyWeb (http://erlyweb.org/). <http://erlyweb.org/%29.>.. ;)

Alexander Dergachev

unread,
Jul 2, 2009, 12:42:10 AM7/2/09
to erlang-...@googlegroups.com
Насчет MySQL и PostgreSQL можно ещё сказать то, что используя их, так
же будет возможным иметь доступ к базе из других приложений... CouchDB
может и хорош, но в том же ErlyWeb привязки к нему нет вообще никакой,
а хотелось бы (мы же о веб фреймворках говорим, и там все должно быть
и коробки)... Насчет джанго и рельс сказать ничего не могу, уж так
получилось что не работал ни с тем ни с другим, но знаю что тот же
ErlyWeb питался с оглядкой на рельсы, уж не знаю, получилось ли
сделать его похожим.

Ну а вообще, видимо просто нужно действительно подождать, глядишь
через пару лет фрилансерские сайты будут пестрить вакансиями
программистов на ErlyWeb/BeepBeep/Nitrogen... И тогда Erlang захавает
всех :)

Мечты... мечты...

Dmitrii Dimandt

unread,
Jul 2, 2009, 2:16:45 AM7/2/09
to erlang-...@googlegroups.com
Судя по последним событиям в мире
Эрланга, он и так всех уже хавает :)

Facebook
Electronic arts
BBC
....

:)

Alexander Dergachev

unread,
Jul 2, 2009, 4:58:55 AM7/2/09
to erlang-...@googlegroups.com
Это да... когда я смотрю на список кастомеров нашего продукта, то становится непосибе.. :)

2009/7/2 Dmitrii Dimandt <dmit...@gmail.com>

Phil Pirozhkov

unread,
Jul 3, 2009, 7:07:14 PM7/3/09
to Erlang в России
А если не секрет, что за продукт?

On Jul 2, 12:58 pm, Alexander Dergachev <cy6erbr...@gmail.com> wrote:
> Это да... когда я смотрю на список кастомеров нашего продукта, то становится
> непосибе.. :)
>

> 2009/7/2 Dmitrii Dimandt <dmitr...@gmail.com>

Alexander Dergachev

unread,
Jul 4, 2009, 4:33:11 AM7/4/09
to erlang-...@googlegroups.com
Все что смог найти в открытом доступе:

http://www.ericsson.com/ericsson/corpinfo/publications/review/2005_01/017.shtml

тогда это было еще концептом, сейчас это уже реальность :) возможно с некоторыми изменениями... посмотри PDF`ку... там встречаются блейды под названиями SIS, MXB, ISER, etc... так вот софт который крутится на SIS написан на Erlang, его собственно и пилим.

2009/7/4 Phil Pirozhkov <pirj...@gmail.com>

Дмитрий Омелечко

unread,
Jul 4, 2009, 7:17:33 AM7/4/09
to erlang-...@googlegroups.com
Попробовал ваш продукт - очень понравился. Концептуально все как и везде только на эрланге :) 

Возможно некоторые части своего проекта отпишу на 2beep но вопросы у меня соответствующие:

0. Проводили ли вы нагрузочные тесты? Хотя бы по сравнению с джангой?

1. Хочется быть уверенным в будущем этого  проекта. Ведь у вас есть все шансы на успех :)



30 июня 2009 г. 16:08 пользователь Dmitrii Dimandt <dmit...@gmail.com> написал:

Dmitrii Dimandt

unread,
Jul 4, 2009, 11:50:49 AM7/4/09
to erlang-...@googlegroups.com
On Jul 4, 2009, at 2:17 PM, Дмитрий Омелечко wrote:

Попробовал ваш продукт - очень понравился. Концептуально все как и везде только на эрланге :) 


Спасибо :)

Возможно некоторые части своего проекта отпишу на 2beep но вопросы у меня соответствующие:

0. Проводили ли вы нагрузочные тесты? Хотя бы по сравнению с джангой?


Нет, пока не проводили



1. Хочется быть уверенным в будущем этого  проекта. Ведь у вас есть все шансы на успех :)



Спасибо :) Проект будем развивать и дальше, потому что интерес к нему проявился нешуточный :)

Alexander Dergachev

unread,
Jul 4, 2009, 1:59:16 PM7/4/09
to erlang-...@googlegroups.com
Так много позитивных отзывов, что собрал все силы в кулак, и посмотрел таки, что это за BeepBeep... прочел документацию и...

Дмитрий, есть пару вопросов...

как я знаю, с ErlyWeb ты тоже работал, и наверняка знаешь что в ErlyWeb есть такая возможность, создавать контроллеры, доступ к которым есть только внутри аппликейшена, из других контроллеров, и пользователь не может напрямую обратиться к нему (контроллеру) через адресную строку. В ErlyWeb это делалось путем добавления функции

private() -> true.

это можно использовать для "вложенных" элементов, например для меню. Отсюда вытекает второй вопрос, можно ли использовать "вложенные" render таплы? тоесть возвращать из контроллена {render, "...", [{...}, {render, ...}] как это можно сделать в ErlyWeb? (там это делается с помощью вложенных ewc таплов)

По воводу первого вопроса есть догадка, что это можно делать с помощью before_filter/1, либо непосредственно в контроллере, либо в аппликейшене (причем в аппликейшене это вроде как даже проще, только не придется где-то "записывать" список "закрытых" контроллеров).

Если таких возможностей нет на данный момент, то планируется ли такая функциональность в ближайшее время?

Зарание благодарен.


2009/7/4 Dmitrii Dimandt <dmit...@gmail.com>

Alexander Dergachev

unread,
Jul 4, 2009, 2:01:49 PM7/4/09
to erlang-...@googlegroups.com
небольшая опечатка


(причем в аппликейшене это вроде как даже проще, только не придется где-то "записывать" список "закрытых" контроллеров).

"красное" не читать :)

2009/7/4 Alexander Dergachev <cy6er...@gmail.com>

(причем в аппликейшене это вроде как даже проще, только не придется где-то "записывать" список "закрытых" контроллеров).

Dmitrii Dimandt

unread,
Jul 4, 2009, 3:43:22 PM7/4/09
to erlang-...@googlegroups.com
К сожалению (счастью? :)) — нет.


>
> По воводу первого вопроса есть
> догадка, что это можно делать с
> помощью before_filter/1, либо
> непосредственно в контроллере, либо в
> аппликейшене (причем в аппликейшене
> это вроде как даже проще, только не
> придется где-то "записывать" список
> "закрытых" контроллеров).
>


Да, если надо что-то «дорендерить», то
лучше всего это добавить в before_render в
соответствующем контроллере или в
before_render в аппликейшне.

Например, в самом сайте beepbeep'а (в сорсах
— examples/beep) происхоит следующее:

в beep_web:before_render/2 добавляются данные для
главного меню сайта (это меню
расположено в самом верхнем,
родительском шаблоне base.html)

в documentation_controller:before_render/1 добавляются
даные для меню справа, расположеного
во всех страницах документации


> Если таких возможностей нет на данный
> момент, то планируется ли такая
> функциональность в ближайшее время?
>

Если такая возможность будет нужна, то
это можно обсудить и посмотреть, как
это лучше сделать

Alexander Dergachev

unread,
Jul 5, 2009, 3:58:30 AM7/5/09
to erlang-...@googlegroups.com

2009/7/4 Dmitrii Dimandt <dmit...@gmail.com>

Да, если надо что-то «дорендерить», то
лучше всего это добавить в before_render в
соответствующем контроллере или в
before_render в аппликейшне.


Собственно в этом и вопрос, из примеров я понял что можно что-то добавить в Data в тапле render, и "дорендерить" что-нить дополнительно, но мой вопрос вот в чем, что если я хочу дорендерить что-то, что имеет свой собственный контроллер и вью? тоесть мне надо вызвать функцию из контроллера, и результат уже подставить на страничку (причем там скорее всего уже будет все отрендерено, надо только разместить в нужном месте). Может быть я чего-то не понимаю, и это делается в BeepBeep как-то иначе :) Зарание благодарен за ответ.

Dmitrii Dimandt

unread,
Jul 5, 2009, 4:34:09 AM7/5/09
to erlang-...@googlegroups.com
Ага, понял. Нет, пока именно такое пока невозможно. Но ожно подумать о том, как это реализовать :)

Alexander Dergachev

unread,
Jul 5, 2009, 8:29:28 AM7/5/09
to erlang-...@googlegroups.com
Ок, спасибо за ответы!

2009/7/5 Dmitrii Dimandt <dmit...@gmail.com>

Alexander Dergachev

unread,
Jul 5, 2009, 1:09:57 PM7/5/09
to erlang-...@googlegroups.com
Подумал я тут, подумал, и возник еще один вопрос...

Предположим я хочу написать новостную ленту, или допустим блог. В таком случае нужно будет иметь возможность генерить "ленту" с однотипными элементами (запись в блоге, или новость в новостной ленте)...

Чтобы я сделал в ErlyWeb, я бы написал отдельный компонент, со своим контроллером и вью. Потом в основном контроллере я бы в "цикле" нагенерил список записей (используя нужный контроллер и вью), и уже имея список отрендеренных записей, просто бы отобразил его внутри основной страницы, надеюсь мысль ясна...

Собственно вопрос, как тоже самое сделать с BeepBeep... я пока что не понимаю как это сделать.

Зарание благодарен.

2009/7/5 Alexander Dergachev <cy6er...@gmail.com>

Kirill Zaborski

unread,
Jul 5, 2009, 1:16:26 PM7/5/09
to erlang-...@googlegroups.com
Извиняюсь, что вклиниваюсь (сам бипбип только чуть потрогал), но ErlDTL на что?
Правда это больше представление, но как тут логика будет "разделена"
между контроллером списка и отдельной записи, я плохо понимаю -
отдельно контролер на список и по вызову "дочернего" контролера на
каждый элемент списка?

5 июля 2009 г. 21:09 пользователь Alexander Dergachev
(cy6er...@gmail.com) написал:

Alexander Dergachev

unread,
Jul 5, 2009, 1:24:16 PM7/5/09
to erlang-...@googlegroups.com
Да, примерно так.

Пишем отдельный контроллер, который по id генерит одну запись, и рендерит ее через вью, тоесть выхлоп из него, полностью готовая запись.

Другой контроллер, допустим как ты говоришь, для списка. Делает выборку id`ников из базы, допустим последние 25 (предпоследние 25, и т.д., как в ЖЖ например).

Контроллер списка, в "цикле" вызывает контроллер записи, с нужным id, получает выхлоп, готовую запись, в конце "цикла" имеет erlang список с нужными записями, передаем этот выхлоп во вью нашего контроллера списка (в котором можно добавить какие-нить рюшечки например), и уже во вью отображаем этот список as is (тоесть к этому моменту там уже все отрендерено как нужно).

Готово. Так можно сделать в ErlyWeb, а как это сделать в BeepBeep?

2009/7/5 Kirill Zaborski <qri...@gmail.com>

Kirill Zaborski

unread,
Jul 5, 2009, 1:36:25 PM7/5/09
to erlang-...@googlegroups.com
Т.е. множим сущности без необходимости?
Блог у тебя лежит по-любому в каком-то последовательном виде (таблице,
файле), соответственно выбирать сначала id, потом 25 запросов на
содержимое записи как минимум не оптимально.
Моё решение:
контроллер делает выборку 25 записей, передаёт во вьюху, та через for
их показывает, если уж надо отделить 1 запись, то можно сделать
include, к сожалению ErlyDTL не поддерживает джанговские custom tags,
на которых решение было бы более удобным имхо.
Ну и ещё раз скажу, что я в бипбип знаю меньше чем ты, по-моему :)

5 июля 2009 г. 21:24 пользователь Alexander Dergachev

Alexander Dergachev

unread,
Jul 5, 2009, 2:38:07 PM7/5/09
to erlang-...@googlegroups.com
В своем варианте ты предлагаешь во вью засунуть часть логики (цикл for), что само по себе противоречит MVC, и за что многие ругают ErlyWeb (хотя в нем как раз, как мы видим, можно и не смешивать логику и представление).

Ну в общем я понял как тут и что, просто я если честно не очень знаком с джанговскими темплейтами, поэтому не знал что в них можно прописывать "логику".

Всем спасибо.

2009/7/5 Kirill Zaborski <qri...@gmail.com>

Dmitrii Dimandt

unread,
Jul 5, 2009, 3:09:48 PM7/5/09
to erlang-...@googlegroups.com

В джанговских темплейтах это не столько логика, ну или очень куцая логика.

Что-то типа:


controller:

show() ->
    {render, [
       {posts,
            [{title, "Title1"}, {text, "text1"}],
            [{title, "Title2"}, {text, "text2"}],
            [{title, "Title3"}, {text, "text3"}]}
    ]}



view:


{% for  post in posts %}
    <h1> {% post.title %}</h1>
    <div>{% post.text %}</div>
{% endofr %}

Kirill Zaborski

unread,
Jul 5, 2009, 3:25:15 PM7/5/09
to erlang-...@googlegroups.com
Не согласен я, что это логика, это, скорее, логика представления,
по-моему в контроллере она является лишней, скажем понадобится тебе
сделать чётные записи другим цветом или ещё что-нибудь в таком роде,
или в 3 колонки располагать записи...
Так что не надо про противоречие MVC - фактически данные (25 записей)
есть модель, а то что надо отобразить их все последовательно - это уже
ответственность вьюхи, а может он их и в обратном порядке нарисовать
или в каком шахматном.
Тем более что MVC тут не очень чтоб гладко ложится на задачу.
Хотя, думаю, возможность отображения "кусочков" HTML полезна (дабы не
заниматься копипейстом) и жаль, что custom tags нет в ErlyDTL, но вот
контроллер для этого не нужен (если под контроллером подразумевать
именно контроллер веб-страницы). Но, может быть, есть какой-то
вариант, о котором я не подумал.

С уважением,
Заборский Кирилл.

5 июля 2009 г. 22:38 пользователь Alexander Dergachev

Alexander Dergachev

unread,
Jul 5, 2009, 3:32:07 PM7/5/09
to erlang-...@googlegroups.com
Спасибо за разъяснения, теперь все понятно. Можно еще один вопрос (в исходники еще не смотрел, решил спросить тут), правильно ли я понимаю, что по умолчанию, когда мы набираем урл сайта, запускается контроллер home (если никакой другой контроллер не указан)? Просто в документации на сайте я такого не увидел, чисто на практике выяснилось.

2009/7/5 Kirill Zaborski <qri...@gmail.com>

Artiom Diomin

unread,
Jul 5, 2009, 3:31:21 PM7/5/09
to erlang-...@googlegroups.com
Ненене Дэвид, это другая уличная магия ;)

во view не должно быть *бизнес* логики, т.е. вычислений, выборки из БД,
и так далее. А for это просто способ показать данные.

В Вск, 05/07/2009 в 22:38 +0400, Alexander Dergachev пишет:
> --~--~---------~--~----~------------~-------~--~----~
> Страница рассылки: http://groups.google.com/group/erlang-russian
> Jabber-конференция: erl...@conference.jabber.ru
> Новости: http://erlang.dmitriid.com
>
> -~----------~----~----~----~------~----~------~--~---
>

signature.asc

Kirill Zaborski

unread,
Jul 5, 2009, 3:41:47 PM7/5/09
to erlang-...@googlegroups.com
Ага, правильно понимаешь, по-моему надо как минимум это в доках написать.
Но вообще жёсткая привязка урла и кода это не есть гуд по-моему, а
если можно будет от этого уйти (сделать что-нибудь наподобие
джанговских урлконфов), то тогда, если нет привязки главной страницы,
то надо будет выдавать 404-ю, причём в дебажном режиме с объяснением,
где что искали и т.п. Только пока это скорей мечты :)

5 июля 2009 г. 23:32 пользователь Alexander Dergachev

Dmitrii Dimandt

unread,
Jul 5, 2009, 3:41:54 PM7/5/09
to erlang-...@googlegroups.com

> Хотя, думаю, возможность отображения
> "кусочков" HTML полезна (дабы не
> заниматься копипейстом) и жаль, что
> custom tags нет в ErlyDTL,


Есть :) Пример — в самом erlydtl (http://
code.google.com/p/erlydtl/), тэг flashvideo.

Другое дело, что пока нет никакой
возможности указать erlydtl'ю папаку с custom
тэгами из beepbeep. Но будет :)

Alexander Dergachev

unread,
Jul 5, 2009, 3:43:31 PM7/5/09
to erlang-...@googlegroups.com
OK, и последний-распоследний на сегодня вопрос, как в контроллере получить файл, переданный туда через POST? Я что-то вот так прям с разгону не понял :( в какую сторону смотреть?

2009/7/5 Artiom Diomin <kro...@gmail.com>
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)

iEYEABECAAYFAkpQ/4kACgkQHoZOXY8LFOBGoQCgyIDECbdQgum3Dino6sRA9bAX
DVcAn3xkmt+IDMFUznDwICNrcgMXoPdE
=/EG8
-----END PGP SIGNATURE-----

Kirill Zaborski

unread,
Jul 5, 2009, 3:45:59 PM7/5/09
to erlang-...@googlegroups.com
это настолько секретная инфа, что на публичный сайт оно не поместилось?
http://code.google.com/p/erlydtl/wiki/TagsAndFilters - ни слова (хотя
доку уже почти год, конечно)

5 июля 2009 г. 23:41 пользователь Dmitrii Dimandt (dmit...@gmail.com) написал:


>
>> Хотя, думаю, возможность отображения
>> "кусочков" HTML полезна (дабы не
>> заниматься копипейстом) и жаль, что
>> custom tags нет в ErlyDTL,
>
>

> Есть :) Пример -- в самом erlydtl (http://

Artiom Diomin

unread,
Jul 5, 2009, 4:03:44 PM7/5/09
to erlang-...@googlegroups.com
Про Django-вский синтаксис шаблонов, скажу как пользователь джанги с
большим опытом. Крайне не удобны эти теги. Особенно
if/ifequal/ifnoequal, это вообще финиш. Не так давно появилась
"альтернативная система шаблонов". Правда она не только для джанги, она
standalone таксказать. Jinja2 http://jinja.pocoo.org/2/
Она от тех глупостей избавлена.

Хотелось бы видеть нечто подобное ;)

В Вск, 05/07/2009 в 23:45 +0400, Kirill Zaborski пишет:
signature.asc

Kirill Zaborski

unread,
Jul 5, 2009, 4:18:45 PM7/5/09
to erlang-...@googlegroups.com
Ну вот не надо только флеймов, что куда включать и какие вещи кто
считает глупостями.
В принципе, я думаю, можно ведь и другой движок шаблонов запихать в
BeepBeep (предлагайте).
А джиндже 2-й(!) уже год как, да и не только её люди к джанге
прикручивают (хотя джинджа вроде как самое популярное), с ходу -
http://code.google.com/p/django-mako/

6 июля 2009 г. 0:03 пользователь Artiom Diomin (kro...@gmail.com) написал:

Alexander Dergachev

unread,
Jul 5, 2009, 5:00:22 PM7/5/09
to erlang-...@googlegroups.com
Немного покопавшись в исходниках beepbeep/mochiweb пришел к выводу, что beepbeep выкидывает все хидеры, и внутри контроллера они не доступны, то есть тот же файл, переданный через POST, в контроллере не виден. Прав ли я? Если да, то как же в таком случае мне получить этот файл? "Хакать" myapp_web:loop/1? Веселое занятие... :)) (да, в документации так и написано, "if you are crazy enough...")

Если все так, то странная политика партии... %) а как же файло-обменники клепать? :)

2009/7/6 Kirill Zaborski <qri...@gmail.com>

Kirill Zaborski

unread,
Jul 5, 2009, 5:16:07 PM7/5/09
to erlang-...@googlegroups.com
Может сделаешь патч, что выдавал бы файлики? :)
Думаю, тут политика такая, что фреймворк пока очень молодой, поэтому
много "мяса" ещё не хватает.

По идее там должен вызываться
mochiweb_multipart:parse_multipart_request/2, но параметры парсятся в
mochiweb_env, который и к mochiweb вроде как не относится.

6 июля 2009 г. 1:00 пользователь Alexander Dergachev
(cy6er...@gmail.com) написал:

Alexander Dergachev

unread,
Jul 6, 2009, 1:58:53 AM7/6/09
to erlang-...@googlegroups.com
Да, видимо так и придется сделать. Ждет меня незабываемый вечер копания во внутренностях beepbeep`а и mochiweb`а :) Как будет что-то готово, сообщу о результатах.

Всем спасибо.

2009/7/6 Kirill Zaborski <qri...@gmail.com>

Dmitrii Dimandt

unread,
Jul 6, 2009, 2:09:15 AM7/6/09
to erlang-...@googlegroups.com
Не, не секретная :) Прямо там и написано:

In addition, you can use the tag tag to include a template with a list of arguments. ErlyDTL ships with one such custom tag called "flashvideo".


:))

Dmitrii Dimandt

unread,
Jul 6, 2009, 2:14:58 AM7/6/09
to erlang-...@googlegroups.com
Я бы хотел вообще возможность
указывать свой собственный дижок
шаблонов. Это,в принципе, реализуемо

Dmitrii Dimandt

unread,
Jul 6, 2009, 2:15:32 AM7/6/09
to erlang-...@googlegroups.com
Мы всегда рады :)

Kirill Zaborski

unread,
Jul 6, 2009, 2:42:05 AM7/6/09
to erlang-...@googlegroups.com
смотрю в книгу, вижу фигу (ц)
т.е. это не custom tags [1] а просто include с аргументами?
жалька, ну хотябы так...

[1] http://docs.djangoproject.com/en/dev/howto/custom-template-tags/

6 июля 2009 г. 10:09 пользователь Dmitrii Dimandt (dmit...@gmail.com) написал:

Dmitrii Dimandt

unread,
Jul 6, 2009, 3:58:03 AM7/6/09
to erlang-...@googlegroups.com
ааа. в этомп плане. в этом плане есть
открытые два тикета: один лично мой, http://code.google.com/
p/erlydtl/issues/detail?id=12 , и один лично не мой, http://code.google.com/p/erlydtl/issu
es/detail?id=14

Автор ErlyDTL никак не регирует на эти
тикеты, поэтому в роадмапе BeepBeep'а есть:
Возможное изменение ErlyDTL согласно
следующим заявкам: Issue 12,Issue 14

:)

Это изменение, возможно, не столько
сложно, сколько муторно в плане
ковыряния в эрланговых синтаксических
деревьях :)

Phil Pirozhkov

unread,
Jul 7, 2009, 5:12:43 PM7/7/09
to Erlang в России
HAML (github.com/kevsmith/herml) однозначно

On Jul 6, 12:18 am, Kirill Zaborski <qri...@gmail.com> wrote:
> Ну вот не надо только флеймов, что куда включать и какие вещи кто
> считает глупостями.
> В принципе, я думаю, можно ведь и другой движок шаблонов запихать в
> BeepBeep (предлагайте).
> А джиндже 2-й(!) уже год как, да и не только её люди к джанге

> прикручивают (хотя джинджа вроде как самое популярное), с ходу -http://code.google.com/p/django-mako/


>
> 6 июля 2009 г. 0:03 пользователь Artiom Diomin (kro...@gmail.com) написал:
>
>
>
> > Про Django-вский синтаксис шаблонов, скажу как пользователь джанги с
> > большим опытом. Крайне не удобны эти теги. Особенно
> > if/ifequal/ifnoequal, это вообще финиш. Не так давно появилась
> > "альтернативная система шаблонов". Правда она не только для джанги, она

> > standalone таксказать. Jinja2http://jinja.pocoo.org/2/


> > Она от тех глупостей избавлена.
>
> > Хотелось бы видеть нечто подобное ;)
>
> > В Вск, 05/07/2009 в 23:45 +0400, Kirill Zaborski пишет:
> >> это настолько секретная инфа, что на публичный сайт оно не поместилось?

> >>http://code.google.com/p/erlydtl/wiki/TagsAndFilters- ни слова (хотя


> >> доку уже почти год, конечно)
>

> >> 5 июля 2009 г. 23:41 пользователь Dmitrii Dimandt (dmitr...@gmail.com) написал:

Reply all
Reply to author
Forward
0 new messages