Como usar los comentarios de Django

Esto es algo que también estoy usando en este blog. Cuando abrí el blog (que posteriormente abandonaría) me programé mi propio módulo de comentarios. Esta vez he decidido ser pragmático y usar lo que Django me ofrecía. Y el resultado ha sido muy satisfactorio.

Tiene innumerables ventajas: es fácil de usar, se pueden añadir comentarios a cualquier clase que queramos y, por supuesto, podemos personalizar las plantillas de formularios y de respuestas. Además lo tenéis todo perfectamente documentado aquí. Comencemos:

####Paso 1: Instalamos la aplicación

Simplemente nos vamos al settings.py de nuestro proyecto y añadimos la aplicación de commentarios a las INSTALLED_APPS. Basta con añadir:

'django.contrib.comments',

####Paso 2: Actualizamos la base de datos

La aplicación de comentarios creará un par de tablas. Simplemente ejecutamos:

 %> python manage.py syncdb

####Paso 3: Mapeamos sobre una url

Tenemos que añadir una url que será destinada a la aplicación de comentarios. Abrimos nuestro fichero de urls.py (el que queramos) y agregamos una url como esta:

urlpatterns = patterns('',
   ...
   (r'^comentarios/', include('django.contrib.comments.urls')),
   ...
)

####Paso 4: Lo utilizamos

Ya sólo nos queda añadir los formularios para enviar comentarios y mostrarlos dónde corresponda. Para ello, vamos a utilizar las Template Tags que Django nos proporciona.

Para empezar, en cada plantilla en la que vayamos a utilizar las Template Tags hay que cargarlas. Simplemente tenemos que hacer la siguiente llamada:

{% load comments %}

Para renderizar el formulario del comentario podemos utilizar:

{% render_comment_form for [object] %}

Donde [object] lo podemos sustituir por cualquier objeto. En este caso, por post.

Para mostrar un listado de comentarios utilizaremos:

{% render_comment_list for [object] %}

Donde [object] lo podemos sustituir por cualquier objeto y nos mostrará todos los comentarios vinculados a ese object.

Y así de sencillo con todo. Podéis ver el resto de Template Tags en la documentación (aquí).

Por último, si queréis modificar las plantillas con las que se renderizan los comentarios, los formularios… teneís que incluir las plantillas comment/list.html, comment/form.html… en vuestro directorio de templates.

Así de sencillo. Espero que os sea de utilidad.

Deja un comentario

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

A %d blogueros les gusta esto: