Комментарии для сайта Django 1.4

категория: Django
Блог - это не блог, если на нем нет комментариев. Настало время для установки и настройки пользовательских комментариев. Я решил не подключать сторонние модули, а взять родной django.contrib.comments. Установка: 1. Добавляем 'django.contrib.comments' в INSTALLED_APPS. 2. Вводим в терминале manage.py syncdb для создания таблиц в базе. 3. Добавляем ссылки в urls.py:
urlpatterns = patterns('',
    ...
    (r'^comments/', include('django.contrib.comments.urls')),
    ...
)
4. Далее добавляем шаблонные теги в наш шаблон: - загрузка комментариев:
{% load comments %}
- получаем количество комментариев для объекта post (в нашем случае — запись блога):
{% get_comment_count for post as comment_count %}
- вывожу количество комментариев для записи блога:
{{ comment_count }}
- выводим стандартную форму для добавления комментариев:
{% render_comment_form for post %}
И выводим все комментарии пользователей:
{% for comment in comment_list %}
<p>{{ comment.user_name }} {{ comment.comment }}</p>
{% endfor %}
Ну вывод формы будет, конечно же, корявый, дорабатываем все шаблоны сами: копируем папку с шаблонами comments и вставляем ее в templates, а дальше меняем все, что угодно, темплейты будут автоматически заменяться вашими, что очень удобно. Форма и все сопутствующие надписи будут на английском языке, если нужно перевести все на русский, в settings.py не забываем поменять настройки, что-то вроде этого:
_ = lambda s: s
LANGUAGES = (
    ('ru', _('Russian')),
)
Но я думаю, что мало кого будут устраивать стандартные комментарии Django, поэтому можно подключить любые другие системы. Это может быть, что угодно: система комментариев социальных сетей Vkontakte, Facebook или популярная система DISQUS. Выбираем на свое усмотрение.


blog comments powered by Disqus