2015-07-07 2 views
1

Мне нужно создать PDF из html-таблиц и искал библиотеку, которая позволяет брать html-таблицы с полным CSS и делать pdf. Я пытаюсь сделать это с помощью PDFKit. Я установил, и я протестировал несколько простых примеров, которые описаны в его документации, он работает. Документация ссылка: PDFKitPDFKit сгенерировать pdf в python

У меня есть несколько таблиц, как это, это таблица, в которой я хочу, чтобы преобразовать в PDF:

<form action="{{ url_for('patient_directory.make_pdf')}}" method="POST"> 
    <button id="download_s" type="submit" class="btn btn-success">Create PDF</button> 
    <table class="patient-view-table" id="table_to_pdf"> 
     <thead> 
     <tr> 
      <th>Name</th> 
      <th>Surname</th> 
      <th>Sex</th> 
      <th>Date of birth</th> 
      <th>Diagnosis</th> 
     </tr> 
     </thead> 
     <tbody> 
     <tr> 
      <td class="property-value-col">{{ patient.name }}</td> 
      <td class="property-value-col">{{ patient.surname }}</td> 
      <td class="property-value-col">{{ patient.sex }}</td> 
      <td class="property-value-col">{{ patient.date_of_birth }}</td>  
      <td class="property-value-col">{{ patient.diagnosis }}</td> 
     </tr> 
     </tbody> 
    </table> 
    </form> 

В форме действия таблицы выше я назвал этот метод, я создал метод маршрута:

mod_patient_directory.add_url_rule('/pdf',methods=['GET', 'POST']) 
def make_pdf(''):  
     pdfkit.from_string(table_to_pdf, 'example.pdf') 

Моя проблема заключается в том, что, когда я пытаюсь генерировать PDF я не знаю, как передать аргументы, например, как сделать знаю, что я хочу, чтобы генерировать в PDF таблицу с id="table_to_pdf"? Любая помощь?

ответ

0

Похоже, что вы используете flask в качестве основы:

Посмотрите на некоторые из примера here и here.

Вы можете передать идентификатор формы в качестве параметра URL.

@app.route('/pdf/<formid>/', methods=['GET', 'POST']) 
def make_pdf(formid): 
    ... 
+0

да я использую флягу, я попытался это, но именно в методе Pdf идентификатор внесенному не распознается как идентификатор, но только в виде строки –

+0

Можете ли вы показать текущую версию 'make_pdf'? Я немного не уверен, откуда приходит переменная 'patient'. – ChrisGuest

Смежные вопросы