/ / 403 error al usar django_comments [cerrado] - django, django-forms

403 error al usar django_comments [cerrado] - django, django-forms

Uso django_comments como sistema de comentarios de mi sitio, pero cuando publico el comentario, me da un error 403. ¿Por qué?

Esta es mi configuración:

MIDDLEWARE_CLASSES = (
"django.contrib.sessions.middleware.SessionMiddleware",
"django.middleware.common.CommonMiddleware",
#"django.middleware.csrf.CsrfViewMiddleware",
"django.contrib.auth.middleware.AuthenticationMiddleware",
"django.contrib.auth.middleware.SessionAuthenticationMiddleware",
"django.contrib.messages.middleware.MessageMiddleware",
"django.middleware.clickjacking.XFrameOptionsMiddleware",
"django.middleware.security.SecurityMiddleware",
)

Las otras formas funcionan bien. No "darán un error 403".

Respuestas

2 para la respuesta № 1

Sus otros formularios funcionan porque ha deshabilitado el middleware CSRF. Esta es una mala idea, porque hace que su sitio web sea vulnerable a un ataque CSRF.

los post_comment vista desde django_comments usa explícitamente el csrf_protect decorador. Por lo tanto, debe incluir {% csrf_token %} en la etiqueta de formulario en su plantilla para evitar errores CSRF.

Si todavía tiene problemas, entonces probablemente sea la vista. Como dicen los documentos, debe asegurarse de que la plantilla se representa con el request objeto, de lo contrario el {% csrf_token %} La etiqueta no funcionará.