Django POST URL error

Estoy tratando de hacer una API REST en Django mediante la salida de Json. Estoy teniendo problemas si hago una solicitud POST utilizando curl en terminal. El error que recibo es

Usted llamó a esta URL a través de POST, pero la URL no termina en una barra inclinada y usted tiene establecido APPEND_SLASH. Django no puede redirigir a la URL de barra mientras mantiene datos de POST. Cambie su formulario para que apunte a 127.0.0.1:8000/add/ (observe la barra diagonal final), o establezca APPEND_SLASH = False en su configuración de Django.

Mi url.py es

from django.conf.urls.defaults import patterns, include, url import search # Uncomment the next two lines to enable the admin: # from django.contrib import admin # admin.autodiscover() urlpatterns = patterns('', url(r'^query/$', 'search.views.query'), url(r'^add/$','search.views.add'), ) 

y mis opiniones son

 # Create your views here. from django.http import HttpResponse from django.template import Context,loader import memcache import json def query(request): data=['a','b'] mc=memcache.Client(['127.0.0.1:11221'],debug=0) mc.set("d",data); val=mc.get("d") return HttpResponse("MEMCACHE: %s
ORIGINAL: %s" % (json.dumps(val),json.dumps(data)) ) def add(request): #s="" #for data in request.POST: # s="%s,%s" % (s,data) s=request.POST['b'] return HttpResponse("%s" % s)

Sé que no le está dando a Json pero tengo el problema mencionado anteriormente cuando hago una solicitud POST en la terminal

     curl http://127.0.0.1:8000/add/ -db=2 >> output.html 

    Aunque soy nuevo en django.

    Primero, asegúrese de enviar la solicitud a http://127.0.0.1/add/ no a http://127.0.0.1/add .

    En segundo lugar, es posible que también desee excluir la vista del procesamiento de csrf agregando el decorador @csrf_exempt , ya que no está enviando el token apropiado desde cURL.

    Para la consistencia de la URL, Django tiene una configuración llamada APPEND_SLASH , que siempre agrega una barra al final de la URL si no se envió de esa manera, para empezar. Esto asegura que /my/awesome/url/ siempre se sirva desde esa URL en lugar de /my/awesome/url y /my/awesome/url/ .

    Sin embargo, Django hace esto redirigiendo automáticamente la versión sin la barra al final a la que tiene la barra al final. Los redireccionamientos no llevan el estado de la solicitud con ellos, por lo que, cuando eso sucede, se eliminan los datos de la POST.

    Todo lo que necesita hacer es asegurarse de que cuando envíe su POST, lo envíe a la versión con una barra al final.

    PARA OBTENER ==> http://127.0.0.1:8000/create?name=wpwqekhqw/

    Para POST ==> http://127.0.0.1:8000/create/?name=wpwqekhqw/

    Debe agregar ‘/’ después de crear en la solicitud POST …