Почему функция Python Dajaxice не распознает, когда HTML отправляет аргументы?
Это работает:
Javascript:
function my_js_callback(data) {alert("Response = " + data.response);}
HTML:
<input id="myID" type="text" name="myID" onblur="Dajaxice.myApp.myAjaxFunction(my_js_callback);"/>
Python:
@dajaxice_register()
def myAjaxFunction(request):
return simplejson.dumps({'response': True})
Однако, когда я добавляю аргумент к функции Ajax и ее вызов из HTML, он не работает:
Javascript:
function my_js_callback(data) {alert("Response = " + data.response);}
HTML:
<input id="myID" type="text" name="myID" onblur="Dajaxice.myApp.myAjaxFunction(my_js_callback,{'myArgument':3});"/>
Python:
@dajaxice_register()
def myAjaxFunction(request, myArgument):
return simplejson.dumps({'response': True})
Вот ошибка, которую это производит:
TypeError: myAjaxFunction() takes exactly 2 arguments (1 given)
Почему второй аргумент не передается myAjaxFunction()? Как сделать так, чтобы myAjaxFunction распознала, что я пытаюсь отправить?
1 ответ
Я нашел ответ. Мне нужно было добавить method='GET' в декоратор. Тогда это сработало:
@dajaxice_register(method='GET')