Skip to main content

Form Designer - a simple form designer for FeinCMS

Project description

https://travis-ci.org/feincms/form_designer.png?branch=master

This form designer does not try to offer every last configuration possibility of Django’s forms, just through the administration interface instead of directly in Python code. Instead, it strives to be a tool which everyone can use right away, without the need for long explanations.

It offers a small set of predefined input fields such as:

  • Text fields (One line and multi line widgets possible)

  • E-mail address fields

  • Checkboxes

  • Dropdowns

  • Radio Buttons

  • Multiple selection checkboxes

  • Hidden input fields

Every field can optionally be declared mandatory, default values and help texts are available too. That’s it.

By default, form data is sent by e-mail to a freely definable e-mail address and stored in the database (a CSV export of saved submissions is provided too). It is possible to add your own actions, but that’s not documented yet. These actions aren’t hardcoded – they can be freely defined for every form defined through this form designer.

Configuring the export

The CSV export of form submissions uses the Python’s CSV module, the Excel dialect and UTF-8 encoding by default. If your main target is Excel, you should probably add the following setting to work around Excel’s abysmal handling of CSV files encoded in anything but latin-1:

FORM_DESIGNER_EXPORT = {
    'encoding': 'latin-1',
}

You may add additional keyword arguments here which will be used during the instantiation of csv.writer.

ReCaptcha

To enable [ReCaptcha](http://www.google.com/recaptcha) install [django-recaptcha](https://github.com/praekelt/django-recaptcha) and add captcha to your INSTALLED_APPS. This will automatically add a ReCaptcha field to the form designer. For everything else read through the django-recaptcha readme.

Override field types

Define FORM_DESIGNER_FIELD_TYPES in your settings file like:

FORM_DESIGNER_FIELD_TYPES = 'your_project.form_designer_config.FIELD_TYPES'

In your_project.form_designer_config.py something like:

from django import forms
from django.utils.translation import ugettext_lazy as _

FIELD_TYPES = [
    ('text', _('text'), forms.CharField),
    ('email', _('e-mail address'), forms.EmailField),
]

Version history

0.4

  • Built-in support for Django 1.7-style migrations. If you’re using South, update to South 1.0 or better.

0.3

  • Support for Python 3.3, 2.7 and 2.6.

  • Support for overridding field types with FORM_DESIGNER_FIELD_TYPES.

Visit these sites for more information

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

form_designer-0.6.2.tar.gz (14.6 kB view details)

Uploaded Source

Built Distribution

form_designer-0.6.2-py2.py3-none-any.whl (20.5 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file form_designer-0.6.2.tar.gz.

File metadata

File hashes

Hashes for form_designer-0.6.2.tar.gz
Algorithm Hash digest
SHA256 1d938239de53521787bbceb326658ac7b5b3e36bd0417b92ca6d1e6b480beacd
MD5 af132f0eea006312e45b878a0eaba2c5
BLAKE2b-256 3d64fd0df551041c942014f1603463abe282ba2e5e9a28b609d5bcdad1f06c12

See more details on using hashes here.

File details

Details for the file form_designer-0.6.2-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for form_designer-0.6.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 e204b917a1e2e7e3e939fdbb99feafd34308f9d4fa44e3a3986bcbbdf9bbad49
MD5 01ab383e3c3aa785c8fc3982b41be849
BLAKE2b-256 087603e9a9791f014e1349ed258e89123ad68b2e0a070d1d160a7aac8e4cd63b

See more details on using hashes here.

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