Le flux de travail type consiste à renvoyer un objet JSON au format texte par le serveur, puis interpret that object in the javascript. Dans votre cas, vous pouvez renvoyer le texte {"httpresponse": 1} du serveur, ou utiliser la librairie python json pour le générer pour vous.
JQuery a une belle JSON-lecteur (je viens de lire les documents, alors il pourrait y avoir des erreurs dans mes exemples)
Javascript:
$.getJSON("/abc/?x="+3,
function(data){
if (data["HTTPRESPONSE"] == 1)
{
alert("success")
}
});
Django
#you might need to easy_install this
import json
def your_view(request):
# You can dump a lot of structured data into a json object, such as
# lists and touples
json_data = json.dumps({"HTTPRESPONSE":1})
# json data is just a JSON string now.
return HttpResponse(json_data, mimetype="application/json")
Une alternative Vue proposée par Issy (mignonne parce qu'elle suit le principe DRY)
def updates_after_t(request, id):
response = HttpResponse()
response['Content-Type'] = "text/javascript"
response.write(serializers.serialize("json",
TSearch.objects.filter(pk__gt=id)))
return response
Quelqu'un m'a donné une bonne réponse à ce sujet il y a quelques semaines: http://stackoverflow.com/questions/1457735/django-models-are-not-ajax-serializable – theycallmemorty
Une autre façon de retourner les données json, à partir d'un modèle ... def updates_after_t (demande, id): réponse = HttpResponse() réponse [ 'Content-type'] = "text/javascript" response.write (serializers.serialize ("JSON", TSearch.objects.filter (pk__gt = id))) retourner la réponse – ismail