#python-3.x #django
#python-3.x #django
Вопрос:
Я пытаюсь передать данные в django view через ajax, как я делал с php, но я получаю при печати пустое значение, но мой журнал консоли показывает, что в javascript есть значение данных, но при просмотре возвращает None
Quit the server with CONTROL-C.
None
мой код HTML-файла
{% for image in images %}
<table style="width:100%;" id="tab-{{image.image_cid}}">
<tr>
<td style="width:70%;vertical-align:middle">
<img src="/medias/{{ image.image_value }}" alt="" width="100" >
</td>
<td style="width:30%;vertical-align:middle">
<a href="#/" id="{{ image.image_cid }}" class="cl-img-del"> DELETE </a>
</td>
</tr>
</table>
{% endfor %}
<script>
$(document).ready(function(){
$(".cl-img-del").click(function(e){
var imgID = e.target.id
console.log(imgID);
$.ajax({
headers: {'X-CSRFToken': '{{ csrf_token }}'},
url: "{% url 'delete-image-ajax' %}",
type: "POST",
data: { imageid: imgID },
contentType: false,
cache: false,
processData:false,
success: function(data){
if(data == 'done')
{
$('#tab-' imgID).remove();
}
},
error: function(){}
});
});
});
</script>
и мой код файла просмотра
def deleteImageAjxFn(request):
if request.method == "POST":
imgid = request.POST.get('imageid')
print(imgid)
try:
image = Images.objects.filter(image_shw = int(0), image_cid=imgid).delete()
except Images.DoesNotExist:
image = None
if(image):
return HttpResponse('done')
else:
return HttpResponse('None')
Ответ №1:
используйте статический URL в ajax вместо динамических тегов URL django
используйте это вместо url: "/delete-image-ajax/"
Комментарии:
1. Это ничего не меняет, все то же самое
2. пожалуйста, проверьте URL, это / delete-image-ajax / или что-то еще
3. да, я пытался вернуть то же самое, URL-адрес ‘/ deletejx /’
None [25/Oct/2020 06:33:50] "POST /deletejx/ HTTP/1.1" 200 4
4. попробуйте указать imageid в data ->data: { «imageid»: imgID }