The easiest and most flexible Django CMS Form builder w/ ReCaptcha v2 support!
Project description
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
Install djangocms-forms-maintained:
pip install djangocms-forms-maintained
Add djangocms_forms to INSTALLED_APPS:
INSTALLED_APPS = ( ... 'djangocms_forms', ... )
Sync database tables (requires south>=1.0.1 if you are using Django 1.6.x):
python manage.py migrate
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')), ... )
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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for djangocms-forms-maintained-202206141419.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 10ea5b19fb4e776b5fd6453cc7f0da77685835f8b1f488e0e6f221bdc2fa6e65 |
|
MD5 | d0b20c71560b13cbedc584626e85357a |
|
BLAKE2b-256 | 1526774383ad370012a493a208559ff9ca4c6040f3b94f86dbcc1df9b5f8db21 |
Hashes for djangocms_forms_maintained-202206141419-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d08cfbccad5dc3950d097fa6e7b6e4cb5c017cd394ab2d7e244bb72b11d59925 |
|
MD5 | 8f48630f2f52991dc54354675b6d6966 |
|
BLAKE2b-256 | ae9dcf956795fddff1face90a74554703eb3594f00e2f973dfed83134aeb8ecd |