Счастливого всем выходного кодирования !!!.
Я застрял, пытаясь отправить объект JSON через $ .load () из jQuery, я хочу отправить его с помощью метода GET, это код, который у меня есть в моем коде JavaScript, я прикрепил запрос Ajax, который для ясности получает объект JSON:
function ajaxLoadClasses() {
$.ajax({
url: 'load_classes/',
type: 'GET',
dataType: 'json',
success: function(json) {
$.each(json, function(iterator,item) {
loadViaGet(item);
});
},
error: function(xhr, status) {
alert('Sorry, there was a problem!');
},
complete: function(xhr, status) {},
});
}
function loadViaGet(item) {
$div = $('div.myClass');
//Here is where I'm stuck, I'm not sure if this is the way to send the JSON obj
$div.load('thisAppURL/?json=' + encodeURIComponent(item), function() {
alert('Load was performed');
});
}
«Предмет», полученный json obj, был сделан из модели Джанго с использованием
jsonToSendToAjax = serializers.serialize('json', obj)
И я не думаю, что я использую правильные методы в моем Django для десериализации объекта JSON или для преобразования объекта JSON в объект Python, чтобы я мог обработать его в своем представлении и отправить в шаблон:
def popUpForm(request):
jsonData = request.GET['json']
deser = serializers.deserialize('json', jsonData)
#This could be another way to convert the JSON object to a Python Object
#pythonObj = simplejson.loads(jsonData)
return render_to_response('class_pop_up_form.html', deser)
Будет очень полезно, если кто-нибудь сможет мне помочь с этим !! Я действительно борюсь с этим, но я не нахожу правильный способ сделать это.
РЕДАКТИРОВАТЬ 1:
Я хочу отправить объект JSON через GET с помощью функции $ .load (), а не с помощью метода POST, как я прочитал в jQuery api: http://api.jquery.com/load/ метод $ .load () работает следующим образом: .load (url, [data], [complete (responseText, textStatus, XMLHttpRequest)])
Метод POST используется, если данные предоставляются в виде объекта; в противном случае предполагается GET.
РЕДАКТИРОВАТЬ 2:
Забудьте об отправке объекта json через метод GET, теперь я использую метод POST, но сейчас я не понимаю, как использовать этот объект json в моем Django View.py, не знаю, нужно ли десериализовать это или нет, формат объекта json, который я использую, следующий:
{"pk": 1,
"model": "skedified.class",
"fields": {
"hr_three": null,
"group": 1,
"name": "Abastecimiento de agua",
"day_three": null,
"day_one": "1 , 3",
"hr_one": "10+/3",
"online_class": null,
"teacher_name": "Enrique C\\u00e1zares Rivera / ",
"day_two": null,
"class_key": "CV3009",
"hr_two": null }
}