Извлекает данные с сервера с помощью Jquery AJAX, а затем пытается создать URL-адрес в формате Jinja 2

#python #jquery #django #flask #jinja2

#javascript #jquery

Вопрос:

Я пытаюсь получить данные с помощью API с сервера, а затем отобразить их на странице шаблона Jinja2, но я не знаю, как передать item.id в нем. код приведен ниже:

 $.get("http://127.0.0.1:8000/api/product",function(data){
                $.each(data,function(index,item){
                    var obj="<div class='col-lg-3'>" 
                        "<div class='card shop-hover'>" 
                        "<img src=" item.image[0] " style='height:250px;' alt='wrapkit' class='img-fluid' />" 
                        "<div class='card-img-overlay align-items-center'>" 
                        "<a href='{% url 'Checkout' item.id %}' class='btn btn-md btn-info-gradiant'>Buy Now</a>" 
                        "</div>" 
                        "<span class='label label-rounded label-success'>Sale</span>" "</div>" 
                        "<div class='card'>" 
                        "<h6><a href='#' class='link'>" item.Name "</a></h6>" 
                        "<h6 class='subtitle'>" item.BottomHeading "</h6>" 
                        "<h5 class='font-medium m-b-30'>" item.UnitPrice " / <del class='text-muted line-through'>$225</del></h5>" 
                        "</div>" 
                        "</div>";
                    $(".shop-listing").append(obj);
                });
            });
  

И это строка кода, в которой у меня возникают проблемы

 "<a href='{% url 'Checkout' item.id %}' class='btn btn-md btn-info-gradiant'>Buy Now</a>"
  

Комментарии:

1. не могли бы вы, пожалуйста, поделиться кодом для вашего views.py и urls.py

2. Это URL.py path(‘Checkout/<id>’, просмотры. Оформить заказ, имя=»Checkout») и View.py это простая страница, возвращающая список def ListProducts(запрос): return render (запрос,’listing.htm ‘) это говорит о том, что обратный URL-адрес не найден

Ответ №1:

вам нужно использовать полное имя URL-адреса следующим образом

 "<a href='http://127.0.0.1:8000/Checkout/"   item.id   "' class='btn btn-md btn-info-gradiant'>Buy Now</a>"