comment obtenir des données POST dans django 1.3

Hey, je suis ce tutoriel pour apprendre à faire une page wiki avec Django. Cependant, il est fabriqué dans django 0,96 et j'utilise Django 1.3 donc il y a des choses qui sont différentes. Certains que j'ai déjà moi-même fixé, mais celui-ci je n'arrive pas à le faire fonctionner.

J'ai fait un formulaire qui envoie des données à un point de vue.
C'est la forme:

<form method="post" action"/wikicamp/{{page_name}}/save/">{% csrf_token %}
    <textarea name="content" rows="20" cols="60">{{content}}</textarea><br>
    <input type="submit" value="Save Page"/>
</form>

et l' /wikicamp/{{nom_page}}/enregistrer/url redirige vers la save_page vue:

from django.http import HttpResponseRedirect
from django.core.context_processors import csrf

def save_page(request, page_name):
    c = {}
    c.update(csrf(request))
    content = c.POST["content"]
    try:
        page = Page.objects.get(pk=page_name)
        page.content = content
    except Page.DoesNotExist:
        page = Page(name=page_name, content=content)
    page.save()
    return HttpResponseRedirect("wikicamp/" + page_name + "/")

Cependant le problème est que j'obtiens cette erreur:

Help

Reason given for failure:

    CSRF token missing or incorrect.


In general, this can occur when there is a genuine Cross Site Request Forgery, or when Django's CSRF mechanism has not been used correctly. For POST forms, you need to ensure:

    The view function uses RequestContext for the template, instead of Context.
    In the template, there is a {% csrf_token %} template tag inside each POST form that targets an internal URL.
    If you are not using CsrfViewMiddleware, then you must use csrf_protect on any views that use the csrf_token template tag, as well as those that accept the POST data.

You're seeing the help section of this page because you have DEBUG = True in your Django settings file. Change that to False, and only the initial error message will be displayed.

You can customize this page using the CSRF_FAILURE_VIEW setting.

Donc, j'ai lu une partie de la documentation, comme http://docs.djangoproject.com/en/dev/ref/contrib/csrf/#how-to-use-it. J'ai essayé de le faire, cependant, et il faisait toujours la même erreur.

Donc: quelqu'un à une idée de comment gérer post de formulaire de données bien avec Django 1.3?

Je pense qu'il a quelque chose à faire avec: Le point de vue de la fonction utilise RequestContext pour le modèle, au lieu de Contexte. mais je ne sais pas maintenant ce que c'est.

btw, dans mon terminal qui montre la requête http du localhost il dit ceci: {% csrf_token %} a été utilisé dans un modèle, mais le contexte ne fournit pas la valeur. Cela est généralement causé par la non-utilisation RequestContext.

source d'informationauteur Javaaaa