Skip to main content

The easiest and most flexible Django CMS Form builder w/ ReCaptcha v2 support!

Project description

Latest Version Downloads License CodeFactor

This project requires django-cms v3.6 or higher to be properly installed and configured.

This package is compatible with Aldryn.

This version uses https://github.com/praekelt/django-recaptcha for ReCaptcha capabilities.

Quickstart

  1. Install djangocms-forms-maintained:

    pip install djangocms-forms-maintained
  2. Add djangocms_forms to INSTALLED_APPS:

    INSTALLED_APPS = (
        ...
        'djangocms_forms',
        ...
    )
  3. Sync database tables (requires south>=1.0.1 if you are using Django 1.6.x):

    python manage.py migrate
  4. Add djangocms_forms.urls to your project’s urls module or create a django CMS page to hook the application into. In Advanced Settings, set its Application to Forms (this requires a server restart):

    urlpatterns = patterns(
        ...
        path('', include('djangocms_forms.urls')),
        ...
    )
  5. To use reCAPTCHA for spam protection, you need to sign up for an API key pair for your site:

    DJANGOCMS_FORMS_RECAPTCHA_PUBLIC_KEY = '<recaptcha_site_key>'
    DJANGOCMS_FORMS_RECAPTCHA_SECRET_KEY = '<recaptcha_secret_key>'

You can register a new site via https://www.google.com/recaptcha/admin

Configuration

Plugin(s) Module - If module is None, plugin is grouped Generic group:

DJANGOCMS_FORMS_PLUGIN_MODULE = _('Generic')

Name of the plugin:

DJANGOCMS_FORMS_PLUGIN_NAME = _('Form')

The path to the default template used to render the template:

DJANGOCMS_FORMS_DEFAULT_TEMPLATE = 'djangocms_forms/form_template/default.html'

or override the Form Template dropdown choices to have different template options:

DJANGOCMS_FORMS_TEMPLATES = (
    ('djangocms_forms/form_template/default.html', _('Default')),
)

HTML5 required - When set to True all required fields inputs will be rendered with HTML5 required=required attribute:

DJANGOCMS_FORMS_USE_HTML5_REQUIRED = False

By default, djangocms-forms adds additional css classes to all form inputs. e.g. a Text field generates an <input class="textinput"> You can override this to integrate your own CSS framework:

DJANGOCMS_FORMS_WIDGET_CSS_CLASSES = {'__all__': ('form-control', ) }

e.g. the above setting would generate <input class"form-control" .... for all fields.

By default, djangocms-forms will redirect a successful form submission after 1000 milliseconds (1 second). You may provide your own redirect delay value for all forms site-wide via settings:

DJANGOCMS_FORMS_REDIRECT_DELAY = 10000  # 10 seconds

or on a per-form basis via the redirect_delay field. The order of precedence for the redirect value is always:

instance.redirect_delay > DJANGOCMS_FORMS_REDIRECT_DELAY > 1000 (default)

As of 202206141310 you can now specify new FORMAT_CHOICES for the form, since tablib seems to be a bit finicky in the latest version:

DJANGOCMS_FORMS_FORMAT_CHOICES = (
    ("csv", _("CSV")),
    ("json", _("JSON")),
    ("yaml", _("YAML")),
    ("xlsx", _("Microsoft Excel")),
)

it can also be passed in on init with the format_choices keyword argument.

Preview

http://mishbahr.github.io/djangocms-forms/assets/resized/djangocms_forms_001.jpeg http://mishbahr.github.io/djangocms-forms/assets/resized/djangocms_forms_005.jpeg http://mishbahr.github.io/djangocms-forms/assets/resized/djangocms_forms_002.jpeg http://mishbahr.github.io/djangocms-forms/assets/resized/djangocms_forms_003.jpeg http://mishbahr.github.io/djangocms-forms/assets/resized/djangocms_forms_004.jpeg

You may also like the original author’s plugins…

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

djangocms-forms-maintained-202206141310.tar.gz (139.1 kB view details)

Uploaded Source

Built Distribution

djangocms_forms_maintained-202206141310-py2.py3-none-any.whl (153.6 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file djangocms-forms-maintained-202206141310.tar.gz.

File metadata

File hashes

Hashes for djangocms-forms-maintained-202206141310.tar.gz
Algorithm Hash digest
SHA256 d87b6200421c1ab5b4118294867079574336723f91b39a3feca99c8e2d3c8073
MD5 4c4de401a609a28266ed54ad8b52fa9a
BLAKE2b-256 e0930e63c117e8e6e1b67e27e5d236634db4a612f5a405666e4bded0d59f5a04

See more details on using hashes here.

File details

Details for the file djangocms_forms_maintained-202206141310-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for djangocms_forms_maintained-202206141310-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 77d2a2c0557931e6a759a79bc70eb7f08cd43bbb602beed572b212238d870d8c
MD5 03f020cdac652e676c1e2981fd68d8d6
BLAKE2b-256 d3834484daa8b0a903f2da79368eaa9841982253a629287dd028396059a895d1

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