Skip to main content
Help us improve Python packaging – donate today!

Some useful database field definitions for Django.

Project Description

I found myself copying a few Django database field classes from project to project so I decided to bundle them together
and release them as an open source package instead. Here are the fields that are currently included:
  • TimeZoneField

    This field stores a reference to a time zone in the database and automatically instantiates the correct pytz time
    zone object on retrieval. Useful for recording a user’s default time zone.
  • MarkdownCharField

    This field is meant to be used in collaboration with a regular CharField. The regular CharField stores the Markdown-
    formatted source text and this field will store the rendered HTML version of that same text. Use the populate_from
    argument to indicated which field on the same model contains the source text. If the allow_html argument is
    False (the default), any HTML tags present in the source text will be removed using the
    bleach library. The extensions argument can be used to enable any desired
    extensions for the
    Markdown library. One extension is enabled by default:
    SmartyPants. SmartyPants is configured to use the
    correct Unicode characters (e.g. “) rather than HTML entities (e.g. “). Since CharFields don’t normally
    contain paragraphs of text, MarkdownCharField strips the <p></p> tags that Markdown always includes.
  • MarkdownTextField

    This field is meant to be used in collaboration with a regular TextField. The regular TextField stores the Markdown-
    formatted source text and this field will store the rendered HTML version of that same text. Use the populate_from
    argument to indicated which field on the same model contains the source text. If the allow_html argument is
    False (the default), any HTML tags present in the source text will be removed using the
    bleach library. The extensions argument can be used to enable any desired
    extensions for the
    Markdown library. One extension is enabled by default:
    SmartyPants. SmartyPants is configured to use the
    correct Unicode characters (e.g. “) rather than HTML entities (e.g. &ldquo;).
  • UUIDPrimaryKeyField

    UUIDs are, in many ways, better primary keys than automatically incrementing integer fields. Unfortunately, the
    default Django implementation—UUIDField—requires some boilerplate (including importing the uuid module) before
    it can be used as a primary key. UUIDPrimaryKeyField manages the boilerplate for you. Just add
    id = UUIDPrimaryKeyField()
    

    to your model and everything will just work.

Release history Release notifications

This version
History Node

0.0.4

History Node

0.0.3

History Node

0.0.2

History Node

0.0.1

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
django_useful_fields-0.0.4-py2.py3-none-any.whl (6.2 kB) Copy SHA256 hash SHA256 Wheel py2.py3 Feb 19, 2016
django-useful-fields-0.0.4.tar.gz (3.8 kB) Copy SHA256 hash SHA256 Source None Feb 19, 2016

Supported by

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