Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Django pony forms

Python HTML
branch: master

Build Status Version

Coverage Status Downloads Requirements Status


Django pony forms

Django-pony-forms helps you to write better html for your Django forms.

Read the documentation on readthedocs

1: Better form html by default

The form html that Django produces is not very nice or useful. For example, the default output of a Django form is a table.

Just mixin PonyFormMixin to produce better html:

class ExampleForm(PonyFormMixin, forms.Form):
    name = forms.CharField()

This produces the following html:

<div class="form-row row-name">
    <label for="id_name">Name</label>
    <input type="text" id="id_name" name="name" />

2: Write your own form templates

You can also write your own form templates:

class ExampleForm(PonyFormMixin, forms.Form):
    name = forms.CharField()

    form_template = 'my_form.html'
    row_template = 'my_row.html'


<div class="my_form">
    {{ hidden_fields }}
    {{ top_errors }}
    {{ rows }}


The package is tested with Django 1.4 - 1.8 and Python 2.6, 2.7, 3.3 and 3.4.


Install the package:

$ pip install django_pony_forms

Add django_pony_forms to your installed apps in

Something went wrong with that request. Please try again.