Envoi de données en Ajax avec le framework Django et jQuery

Un billet pour partager ce snippet sur Django. Comment envoyer des données en ajax via le framework jQuery au code python de Django coté serveur?

L’idée est donc d’envoyer par exemple un tableau d’objet. On va prendre comme objet pour l’exemple une bouteille. Notre bouteille possède 2 variables : un nom et une quantité.

Donc coté client, en javascript , nous allons faire un tableau de bouteille dans lequel se trouve deux bouteilles.

On va maintenant envoyer ce tableau en ajax via la fonction de jQuery.

On précise dans la fonction que l’on envoi les données au format JSON. La méthode d’envoi est traditionnelle, c’est à dire que l’on envoi un tableau de données dans un format sérializable.

Dans la fonction « success » on affiche dans la console la réponse du serveur. Nous avons spécifié une URL dans la fonction ajax, il faut déclarer cette URL au niveau de Django.

Cette ligne va donc mapper l’appel d’url /add_bouteille vers la fonction add_bouteille du fichier de la vue. On va maintenant créer cette fonction dans ce fichier.

Il faut bien penser a ajouter le « @csrf_exempt » et importer la librairie associée sinon Django refusera tout simplement les données. C’est une sécurité qui est en place par défaut de façon à vérifier que le POST vient bien du client qui a demandé la page. Cette dernière n’est pas utilisable en Ajax il faut donc la désactiver.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *