Пожалуйста, посмотрите фрагмент из документа Django.
Метод декоратора
Вместо добавления CsrfViewMiddleware в качестве общей защиты вы можете использовать декоратор csrf_protect, который имеет точно такую же функциональность, в определенных представлениях, которые нуждаются в защите. Он должен использоваться как для представлений, которые вставляют токен CSRF в вывод, так и для тех, которые принимают данные формы POST. (Это часто одна и та же функция представления, но не всегда). Используется так:
from django.views.decorators.csrf import csrf_protect
from django.template import RequestContext
@csrf_protect
def my_view(request):
c = {}
# ...
return render_to_response("a_template.html", c,
context_instance=RequestContext(request))
Использование декоратора само по себе не рекомендуется , поскольку, если вы забудете его использовать, у вас будет дыра в безопасности. Стратегия «пояса и фигурных скобок», заключающаяся в использовании обоих методов, хороша и требует минимальных накладных расходов.