Skip to main content

Generate PDF, MS Word and Excel documents from templates in Django.

Project description

https://badge.fury.io/py/templated-docs.svg https://img.shields.io/travis/kiawin/templated-docs.svg Documentation Status Dependencies

Generate templated documents within Django in any format supported by LibreOffice: texts, spreadsheets, presentations etc.

Requirements

  • Python 2.7 or 3.4+
  • Django >= 1.8
  • A recent LibreOffice version (>=4.3.0) supporting LibreOfficeKit API.

Example usage

Create a sample.odt document (make sure it’s in OpenDocument format) and put it in your Django templates folder. It should look something like this:

https://github.com/kiawin/templated-docs/raw/master/docs/document-template.png

Then write a view to generate documents from this template:

from templated_docs import fill_template
from templated_docs.http import FileResponse

def get_document(request):
    """
    A view to get a document filled with context variables.
    """
    context = {'user': request.user}  # Just an example

    filename = fill_template('sample.odt', context, output_format='pdf')
    visible_filename = 'greeting.pdf'

    return FileResponse(filename, visible_filename)

Navigate to the url your view is connected to, and you’ll see a rendered and converted document:

https://github.com/kiawin/templated-docs/raw/master/docs/generated-document.png

For more examples, see the examples/ subfolder in the repository. More detailed documentation is available on https://templated-docs.readthedocs.io.

Credits

Templated-docs was written by Alex Morozov.

As the repository is left idle for 2 years, Sian Lerk Lau has forked and resume the task of updating the module.

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

Project details


Release history Release notifications

Download files

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

Files for jpt-templated-docs, version 0.3.3
Filename, size File type Python version Upload date Hashes
Filename, size jpt-templated-docs-0.3.3.tar.gz (48.3 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page