Skip to main content

A Django app to generate pdfs from templates

Project description

Attention

This is a fork of the https://github.com/xhtml2pdf/django-xhtml2pdf project.

This project is wrapper code between the django project and the xhtml2pdf project, both have a few maintaining so maybe are not ideal for your project.

What it does is simply allow people to create xhtml2pdf templates using all the cool django things like STATIC_URL etc.. (like one would for a webpage template), and the utils function makes all the images and resources appear in the pdf.

This release (0.0.5) supports Django 2.0, and Python 3.6.

NOTE:

While this project is being maintained on a limited basis for legacy projects, we recommend strongly that new projects consider using WeasyPrint <https://weasyprint.org>.

Usage

Simply do the following:

from django_xhtml2pdf.utils import generate_pdf

def myview(response):
    resp = HttpResponse(content_type='application/pdf')
    result = generate_pdf('my_template.html', file_object=resp)
    return result

Class-based views

You can use the provided PdfMixin with any view that subclasses TemplateView, example:

from django.views.generic.detail import DetailView
from django_xhtml2pdf.views import PdfMixin
from .models import Product

class ProductPdfView(PdfMixin, DetailView):
    model = Product
    template_name = "product_pdf.html"

It will output the rendered content of the view in pdf.

Decorator

Simply do the following:

from django_xhtml2pdf.utils import pdf_decorator

@pdf_decorator
def myview(request):
    return render(request, 'mytemplate.html')

Change the pdf file name:

from django_xhtml2pdf.utils import pdf_decorator

@pdf_decorator(pdfname='new_filename.pdf')
def myview(request):
    return render(request, 'mytemplate.html')

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lanshark-django-xhtml2pdf-0.0.5.tar.gz (43.1 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file lanshark-django-xhtml2pdf-0.0.5.tar.gz.

File metadata

File hashes

Hashes for lanshark-django-xhtml2pdf-0.0.5.tar.gz
Algorithm Hash digest
SHA256 f59499ae74a17c38a3aa9067d1a842691e8bd15de324849bfd60269672b2825f
MD5 d74d4a91579e08cf1b62517bde5d5f78
BLAKE2b-256 a6606a89cc0d50bf5d4111a9bf265bdf8d7fef2819ade8391b86a1b55b2e9fa3

See more details on using hashes here.

Provenance

File details

Details for the file lanshark_django_xhtml2pdf-0.0.5-py3-none-any.whl.

File metadata

File hashes

Hashes for lanshark_django_xhtml2pdf-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 4ec1e99af9a8566e4a7fe46342a9c342a71c248ffd7594430a81b7ac909b7a8e
MD5 1f673c522cc248593320e73af20a9dca
BLAKE2b-256 3108a63e111f13a8db1a58d7b0ebf2a8aba4244ca47abb3e4b9477e997426550

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page