Skip to main content

Django tool to tag objects and export them to Zotero

Project description

django-zotero is a django app that provides a generic formset to tag any django object with Zotero metadata. Tagged object are easily exportable to Zotero in one click.


First of all, it is needed to have pip installed on your system. It is strongly recommended to install virtualenv and virtualenvwrapper to take the most advantage of pip.

To install pip, go to

To install virtualenv, go to

To install virtualenvwrapper, go to

Now install django-zotero:

$ pip install django-zotero


To use django-zotero, follow the next steps:

  1. Django settings: add the app name to INSTALLED_APPS in

  2. Administration side: add the following code to

    1. Import the class TagInlineAdmin [1]:

      from zotero.admin import TagInlineAdmin
    2. For each model you wish to tag, add to its admin class:

      inlines = (
  3. User side: add the following code:

    1. In

      1. Import the function get_tag_formset [2]:

        from zotero.forms import get_tag_formset
      2. In the view that manages the tagged object, instanciate the formset and save it:

        tag_formset = get_tag_formset(
                'item_type': 'Document type',
    2. In the template that manages the object:

      1. Import the template tag zotero_inline_tags [3]:

        {% load zotero_inline_tags from zotero_inline_extras %}
      2. Render the formset:

        {% zotero_inline_tags formset %}
    3. In the template that renders the object:

      1. Import the template tag zotero_tags [4]:

        {% load zotero_tags from zotero_tags_extras %}
      2. Render Zotero metadata:

        {% zotero_tags
            output_method="meta" %}
[1]TagInlineAdmin is an inline class ready to be added as inline of other admin class.

get_tag_formset is a function that gets the formset with Zotero tags for an object. It is based on a generic formset factory and takes four arguments:

  1. obj: object to tag
  2. data: data to instanciate the content of the formset
  3. show_labels: if true, show the labels as headers on the top of the formset; if false, show the labels as placeholders
  4. labels: set alternative labels - default labels are ‘item_type’, ‘field’ and ‘value’
[3]zotero_inline_tags is a template tag that renders a formset. It takes one argument: the formset it renders.

zotero_tags is a template tag that renders the HTML code of Zotero metadata. It takes three arguments:

  1. object: tagged object
  2. vocabulary: the vocabulary to code the metadata - currently it works with Dublin Core (“dc”)
  3. output_method: the method to code the metadata - currently it works HTML <meta> tags (“meta”)

Project details

Download files

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

Files for django-zotero, version 0.4
Filename, size File type Python version Upload date Hashes
Filename, size django-zotero-0.4.tar.gz (136.3 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page