Шаблон django вызывает функцию java-script при нажатии кнопки отправки. Эта функция java-script перенаправляет запрос в функцию представления django, где шаблон должен отображаться.
java-скриптфункция вызывается, но функция представления django не отображает шаблон, даже если обе функции обнаружены при отладке.
Шаблон Django:
<button type="submit" id ="b" name="b" onclick="edit(document.myform.checks,5)" formmethod="get" class="btn btn-danger" disabled>  ✎  </button>
Функция просмотра Django:
def edit(request,i,unique_key):
add=False
template ='pms_app/form.html'
form=Myform(instance=(Mymodel.objects.get(id=unique_key)))
if request.method=="POST":
form=Myform(request.POST,instance=(
Mymodel.objects.get(id=unique_key)))
if form.is_valid():
form.save()
return redirect ('pms_app:display',i=i)
else:
print(form.errors)
return render(request, template, context={'form':form,'unique_key':unique_key})
Функция Javascript:
function edit(chk, i) {
var len = 0;
var x=0;
for (j = 0; j < chk.length; j++) {
if (chk[j].checked == true) {
len++;
if (len > 1)
{
break;
}
x = chk[j].value;
}
}
var edit_url = 'edit/' + i + '/' + x;
if (len > 1)
{
alert("Please select only one record to edit!")
}
else
{
alert(edit_url);
$.ajaxSetup({
data: { csrfmiddlewaretoken: '{{ csrf_token }}' },
});
$.ajax({
url: edit_url,
type: "GET",
success: function () {
alert("requested access complete");
},
error: function () {
alert("requested access failed");
}
})
}
}
Любая идея / помощь о том, почему шаблон не отображается?
консольное сообщение:
----------------------------------------
[28/Jun/2019 12:24:30] "GET /app/display/edit/5/23?csrfmiddlewaretoken=%7B%7B+csrf_token+%7D%7D HTTP/1.1" 302 0
[28/Jun/2019 12:24:30] "GET /app/Import HTTP/1.1" 200 5053
[28/Jun/2019 12:24:30] "GET /app/display/5?csrfmiddlewaretoken=JJPL3pWT8edtiMjHvh5Q4lawPH7vMuWtjbNfKGrP47809uPfPd7qrlybqX6sOI66&b=&checks=23 HTTP/1.1" 200 7823
[28/Jun/2019 12:24:31] "GET /static/app/scripts/app.js HTTP/1.1" 304 0