I have stumbled around following various pieces of advice: added to views: from django.core.context_processors import csrf
modified views to end with: form = ContactForm() c = {} c.update(csrf(request)) c['form'] = form return render_to_response('contact_form.html', c) modified contact_form.html: <form action="" method="post">{% csrf_token %} The first bullet in the error message: The view function uses RequestContext for the template, instead of Context. makes no sense - even after attempting to read what the RequestContext link points to. | now what? -- You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-users@googlegroups.com. To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.