2010-10-21 4 views
1

Я ищу реализацию django-threadedcomments, и мне интересно, может ли он ограничивать потоки ответами, сделанными модератором/владельцем, подобно тому, как Yelp обрабатывает отзывы пользователей и ответы владельцев бизнеса.Django threaded comments - только один уровень

Например комментарии будут выглядеть следующим образом:

«Комментарий 1» по Пользователя1
«Комментарий 2» по Пользователю2
                    «Ответить 1» Владельцем
«Комментарий 3» от пользователя3
                    "Ответ 2" Владельцем
"Комментарий 4" по USER4
"Комментарий 5" от пользователя User5

Как бы вы сделать это в Джанго-threadedcomments? В качестве альтернативы, если вы сделали это, используя встроенную структуру комментариев, я открыт для этого.

ответ

0

В случае, если кто-то ищет это, я был в состоянии сделать это в Django-threadedcomments с помощью PARENT_ID в шаблоне тега

{% render_comment_form for [object] with [parent_id] %} 

.

0

В настоящее время я работаю над небольшим CMF на основе Django, и я внедрил туда комментарии, которые, похоже, работают нормально. Вы можете получить последний источник по адресу http://github.com/kovshenin/Juice. Модуль, который вас интересует, - сок. Threading проиллюстрирован в шаблоне news-single.html, который вызывается из представления juice.front.views.single. Обратите внимание на уровень и отступа параметры, передаваемые в шаблон:

# comments 
p.comments = Comment.tree.filter(content_type__pk=ctype.id, object_id=p.id) 

for c in p.comments: 
    c.indent = c.level * 50 

р объект типа Post, который передается по шаблону.

Теперь, относительно ограничения нарезки на других людей, кроме администратора/владельца. В этом же представлении я иллюстрирую, как обрабатывать форму комментариев, где вы можете ясно видеть, что я ищу родительский комментарий, если он предоставляется. Вам нужно будет добавить туда некоторые логики и проверить текущий вход пользователя и его привилегии, а если они не установлены, используйте parent = NULL. В шаблоне просто спрячьте ответную ссылку;)

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

Cheers.

+0

Обратите внимание, что для работы с деревьями требуется приложение django-mptt. Получите ваш здесь: http://pypi.python.org/pypi/django-mptt/0.4.1, установить через python setuptools, не должно занимать больше минуты. – kovshenin

+0

Вот скриншот: http://twitpic.com/2z2vqq – kovshenin

+0

Я смог использовать django-threadedcomments, но я ценю ответ. – Ian