2009-06-26 1 views
12

Я хочу открыть исходные тексты, аналогично DjangoBook. Я не нашел подобную систему с открытым исходным кодом, как на веб-сайте. Меня особенно интересует вертикальная система комментариев.Невозможно найти/создать комментирующую систему, подобную той, что у Djangobook

Это говорит о том, что мне нужно построить один для open-source.

Как бы вы построили аналогичную систему комментариев, как на веб-сайте?

ответ

6

В каждом абзаце (<p>) указывается ID (cn0, cn1, и т. Д.) И класс (cn). Это единственная часть системы комментариев, оказанная рядом с текстом. Также на странице находится div, которая действует как всплывающее окно, которое также содержит форму комментария.

Остальное сделано с помощью Javascript. Когда страница загружается, они отправляют запрос AJAX назад, чтобы получить номер и местоположение всех комментариев в документе. Это выглядит следующим образом:

[[0,4],[3,2],...] 

При этом он добавляет div на полях с речевым пузырем и количество комментариев к этой линии.

Когда вы нажимаете на пузырьки, инициируется другой запрос AJAX, чтобы получить комментарии к этому пузырьку. В этом случае они отправляют фактический HTML для визуализации вместо объекта JSON, как раньше.

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

Надеюсь, что это поможет вам в правильном направлении. Вы, вероятно, можете узнать больше, посмотрев на their Javascript, , но он был уменьшен, поэтому немного трудно прочитать (UPDATE: найден unminified js). Они строят на YUI, но код довольно прямолинейный.

+0

@tghw: Вы знаете, как сделать js -file доступным для чтения эффективно. Я запускаю визуальный режим Vim «=» для подписи, но я не доволен результатом. –

+0

Нет, но я нашел URL полного, незавершенного JS. Я обновил ссылку выше. – tghw

+0

@tghw: Спасибо за обновления! --- Какой инструмент вы использовали для выяснения новой ссылки? --- Я не нашел новый .js -файл Firefug. –

0

Я думал, что сайт DjangoBook был построен с Django, что, по-видимому, предполагает использование Django comments framework.

ОБНОВЛЕНИЕ: есть примечание here, которое приписывает большое количество кода для системы комментариев Jack Slocum. Ссылка на странице DjangoBook мертва, поэтому я не смог найти никакой дополнительной информации, но может быть в том, что упомянутый код предназначен для кусков YUI/AJAX, которые делают возможным контекстный комментарий.

+0

@Harper: Вы имеете в виду, что у Django есть встроенная система комментирования, аналогичная системе DjangoBook? –

+1

У этого есть встроенная система комментариев, но она не делает встроенные комментарии как DjangoBook. – tghw

2

Давным-давно (2 года) кто-то создал проект Django, чтобы имитировать DjangoBook под названием Open Book Platform.

Он долгое время находился в состоянии покоя и, возможно, даже не работал должным образом на Django 0.96, не говоря уже о 1.0.x. Однако, когда я только что посетил, чтобы получить URL-адрес, я заметил, что в прошлом месяце была какая-то активность.

+0

@Van Gale: Спасибо за ссылку и часть истории! --- Я не знал, что Django скорее «копия» другой платформы. --- Знаете ли вы, что разработчики одинаковы в Django и Open Book Platform? --- Похоже, что Open Book Platform часто использует слово Django. Это говорит о том, что они одни и те же разработчики. --- Однако китайцы в Open Book Platform говорят, что было много разработчиков, поскольку один из европейцев, похоже, является создателем Django. –

+1

err, Open Book Platform - это проект, который был разработан с использованием старой версии Django. Это проект, использующий Django, для имитации работы DjangoBook. Извините за то, что я не понимаю. Вероятно, вы можете запустить его в текущей версии Django с небольшой работой. И да, похоже, что новые сторонники проекта - китайцы, не знаю, каковы их планы. –

0

Возможно, вы захотите попробовать использовать WordPress с плагином CommentPress, который добавляет подобное поведение.

1

Блок примечаний построен на тех же принципах, что и система комментариев DjangoBook, бесплатное обслуживание небольших сайтов.

И в отличие от проектов или плагинов, упомянутых в этой статье другими, они могут использоваться на любой HTML-странице, интеграция - это всего лишь несколько линий JavaScript.

Их первая страница имеет демо http://www.remarkbox.com/

+0

Сайт мертв - предлагаю удалить – benjaoming

+0

@benjaoming: Кажется, загрузка для меня. По какой-то причине это исходный Markdown, но это теоретически правильный выбор. –

3

Вы можете быть заинтересованы по Wooki. Это совместная платформа для написания, 100% открытая и бесплатная. Он был основан на системе Django Book.

Посмотрите: http://wookicentral.com

1

Там свободный и полностью поддерживается, пакет Django, что мы построили, чтобы иметь такую ​​же функциональность как сайт Django Book.

http://ucomment.org

Это кодовая используется на нескольких общедоступных веб-сайтах, например на http://connectmv.com/tutorials

Мы делаем все возможное, чтобы сохранить этот пакет: установка может занять некоторое время, - которые, как ожидается, учитывая то, что программное обеспечение делается. Пожалуйста, попробуйте и отправьте нам свой отзыв через функцию комментариев на сайте http://ucomment.org.

Кевин

+0

где ты Кевин? Я пытаюсь найти вас, чтобы поделиться некоторыми мыслями/проблемами/возможно, вкладами в ucomment ... Я разветвил ваш репозиторий на битбакете, возможно, вам интересно посмотреть мои запросы на получение? –

+0

сайт мертв - предлагаю удалить ответ – benjaoming