Ich habe unzählige Tutorials für Django AJAX-Formulare durchgesehen, aber jedes von ihnen zeigt Ihnen eine Möglichkeit, keine davon ist einfach und ich bin ein bisschen verwirrt, da ich noch nie mit AJAX gearbeitet habe.
Ich habe ein Modell namens "note", eine Modellform dafür, und innerhalb der Vorlage muss jedes Mal, wenn ein note-Element das stop () -Signal (von jQuery Sortables) sendet, django das Objekt aktualisieren.
Mein aktueller Code:
views.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",
});
}
Der aktuelle Code ruft die Daten aus der Vorlage ab und druckt sie im Terminal aus. Ich weiß nicht, wie ich diese Daten manipulieren kann. Ich habe gesehen, dass einige Leute die Daten über jqueryforms verwalten, um die Daten an django zu senden.
Wie kann ich auf die von AJAX gesendeten Daten zugreifen und das Notizobjekt aktualisieren?