Ajax конвертировать html в pdf - PullRequest
0 голосов
/ 01 марта 2020

Я использовал пакет под названием
xhtml2pdf .

Пока все было хорошо, и пакет действительно прост в использовании, если мне не нужны данные для определяется конечным пользователем. Проблема возникает, когда я даю пользователям возможность выбирать, что будет отображаться в PDF.

Пользователь может выбрать из таблицы, нажав на кнопку, связанную с этим объектом. Затем я сохраню этот идентификатор объекта в массиве, который затем будет отправлен через AJAX в мое представление рендера, чтобы соответствующий запрос мог быть передан в контекст.

Звучит просто, и я уверен, Там есть решение, но я не знаю ни одного!

Вот мой javascript. Короче говоря, я не собираюсь показывать сценарий, который я использую для подготовки массива, который я отправляю в представление.

function ajaxsender(clicked_id){
    var a = clicked_id
    $.ajax({
     url : "{% url 'bom-ajax'%}",  
     method : "POST",
     data : {
       'csrfmiddlewaretoken' : "{{  csrf_token  }}",
        'arr[]' : arr ,
        'pk' : a
        },
     success : function(result) {
    console.log(result);
        }

    })};

Это представление, которое я использую для получите этот пост-запрос.

class BomAjax(LoginRequiredMixin, View):
  def post(self, request, *args, **kwargs):
    listy = request.POST.getlist('arr[]')   
    trials = FormulationTrial.objects.filter(pk__in = listy)
    data = {
         'product' : ProductFormulation.objects.filter(formulation_id = pk),
         'trials' : trials,
         'item' : TrialItems.objects.filter(formulationTrial__productFormulation__formulation_id__contains = pk),
         'itemdetails' : ItemDetails.objects.filter(itemdetail_id__in = TrialItems.objects.filter(formulationTrial__productFormulation__formulation_id__contains = pk).values_list('itemdetail', flat=True).distinct().order_by()),
     }
     pdf = render_to_pdf('rnd/bom_pdf.html', data)
     return HttpResponse(pdf , content_type='application/pdf')

При запуске кода не появляется ошибка, и мой журнал консоли показывает мне правильный результат, однако PDF-файл не отображается, перенаправление не происходит.

Пожалуйста, помогите брату здесь!

...