J'ai consulté des tonnes de tutoriels pour les formulaires AJAX de Django, mais chacun d'entre eux vous indique une façon de procéder, aucune n'est simple et je suis un peu perdue car je n'ai jamais travaillé avec AJAX.
J'ai un modèle appelé "note", un formulaire de modèle pour celui-ci, et à l'intérieur du modèle j'ai besoin que chaque fois qu'un élément note envoie le signal stop() (de jQuery Sortables) django mette à jour l'objet.
Mon code actuel :
vues.py
def save_note(request, space_name):
"""
Saves the note content and position within the table.
"""
place = get_object_or_404(Space, url=space_name)
note_form = NoteForm(request.POST or None)
if request.method == "POST" and request.is_ajax:
msg = "The operation has been received correctly."
print request.POST
else:
msg = "GET petitions are not allowed for this view."
return HttpResponse(msg)
JavaScript :
function saveNote(noteObj) {
/*
saveNote(noteObj) - Saves the notes making an AJAX call to django. This
function is meant to be used with a Sortable 'stop' event.
Arguments: noteObj, note object.
*/
var noteID = noteObj.attr('id');
$.post("../save_note/", {
noteid: noteID,
phase: "Example phase",
parent: $('#' + noteID).parent('td').attr('id'),
title: $('#' + noteID + ' textarea').val(),
message: "Blablbla",
});
}
Le code actuel récupère les données du modèle et les imprime dans le terminal. Je ne sais pas comment je peux manipuler ces données. J'ai vu certaines personnes gérer les données à travers jqueryforms pour les envoyer à django.
Comment puis-je accéder aux données envoyées par AJAX et mettre à jour l'objet note ?