Как записать источник изображения в javascript с именем изображения, полученным из вызова Django AJAX - PullRequest
0 голосов
/ 07 мая 2020

У меня есть имя изображения «не полный путь к файлу», полученное при вызове Django AJAX. У объекта так много значений. Возвращаю объект json. Затем я кладу его, чтобы обработать в javascript. У меня есть следующие ошибки:

$(document).on('click', '#post-det', function(e) {

e.preventDefault();

var post_id = $(this).children(':first-child').text();
var post_id = parseInt(post_id);

$.ajax({
      type: "GET",
      url: "{% url 'get_post_details' %}",
      dataType: "json",
      data: {
          "post_id": post_id
      },
      success: function(data) {
         alert(data);
        post_details(data);
      }
  });

});


function post_details(details) {

  var json = JSON.parse(details);

  var userusername= $('#user-username').text(json.user_username);


  alert(json.title);

  var post_images = $('#post-imgs').html(''); // RESET THE images div
  alert(json.images[0].image);

  for( var i = 0; i < json.images.image.length; i++) {


  post_images.html('<div id="carouselExampleIndicators" class="carousel slide" data-ride="carousel">'+
  '<ol class="carousel-indicators">'+
    '<li data-target="#carouselExampleIndicators" data-slide-to="0" class="active"></li>'+
    '<li data-target="#carouselExampleIndicators" data-slide-to="1"></li>'+
    '<li data-target="#carouselExampleIndicators" data-slide-to="2"></li>'+
  '</ol>'+
  '<div class="carousel-inner">'+
    '<div class="carousel-item active">'+
       '<img src='".."+"/"+".."+"/"+".."+"/"+".."+"/"+"media"+"/"+json.images[0].image+' class="d-block w-100" alt="...">'+
    '</div>'+
  '</div>'+
  '<a class="carousel-control-prev" href="#carouselExampleIndicators" role="button" data-slide="prev">'+
    '<span class="carousel-control-prev-icon" aria-hidden="true"></span>'+
    '<span class="sr-only">Previous</span>'+
  '</a>'+
  '<a class="carousel-control-next" href="#carouselExampleIndicators" role="button" data-slide="next">'+
    '<span class="carousel-control-next-icon" aria-hidden="true"></span>'+
    '<span class="sr-only">Next</span>'+
  '</a>'+
'</div>');


  }
  }

У меня ошибка в следующей строке

'<img src='".."+"/"+".."+"/"+".."+"/"+".."+"/"+"media"+"/"+json.images[0].image+' class="d-block w-100" alt="...">'+

Любая помощь или предложение будут очень признательны. Я предпочитаю, чтобы решение находилось на стороне javascript, а НЕ на стороне Django. Я мог бы предупредить имя файла изображений. которые верны. Имя файла изображений находится в формате json .images [i] .image

.

1 Ответ

0 голосов
/ 07 мая 2020

Я нашел правильный ответ в этом ответе, отправленном shmakovpn

Я меняю эту строку:

'<img src='".."+"/"+".."+"/"+".."+"/"+".."+"/"+"media"+"/"+json.images[0].image+' class="d-block w-100" alt="...">'

на

post_images.html('<img src="../../../../media/'+json.images[0].image+ '" class="d-block w-100" alt="..." />'); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...