шаблон рендеринга с токеном csrf и контекстом шаблона - PullRequest
2 голосов
/ 12 марта 2011

В настоящее время я отображаю представления HTML со следующим синтаксисом:

t = loader.get_template('sometemplate.html')
c = Context ({
    'title': title,
    'content': conent,
})
return HttpResponse(t.render(c))

Я хочу добавить форму с защитой CSRF в моем представлении.Что я должен изменить в своем синтаксисе, чтобы я мог передать и контекст, и токен для отображения?

Документы Django показывают другой подход для рендеринга представления с маркером CSRF в нем, но в этих примерах не передается дополнительный контекст.

Заранее спасибо!

1 Ответ

8 голосов
/ 12 марта 2011

Использовать RequestContext вместо Context? Кроме того, вы можете просто использовать render_to_response вместо возврата HttpResponse:

from django.shortcuts import render_to_response
from django.template import RequestContext

return render_to_response('sometemplate.html', { 'title': title, 'content': content }, context_instance=RequestContext(request))
...