{ "info": { "author": "Felipe Ochoa", "author_email": "felipeochoa@find-me-on-github.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3 :: Only" ], "description": "fforms: Functional HTML forms for Python\n========================================\n\n|Travis CI build status (Linux)| |Coverage Status|\n\n\n\n``fforms`` is a Python HTML form validation library that allows you to\ntake control of the validation and rendering while minimizing\nboilerplate and awkward constructions. ``fforms`` does not provide any\nwidgets or rendering assistance beyond ease of access to form values\nand validation errors. It does, however, let you define and use custom\nvalidators with extreme ease. Read on to see how!\n\nInstallation\n------------\n\n``fforms`` is a pure Python package with no dependencies, so\ninstalling it should be very straightforward. It's tested on Python\n3.3 through 3.6. [#3.3]_\n\n1. **Option A**: ``pip install fforms``\n2. **Option B**: download the source code, change into the working\n directory, and run ``python setup.py install``\n\nFeatures\n--------\n\n- A familiar interface for use in views\n\n.. code:: python\n\n form = fforms.bind_dotted(registration_form, request.POST, request.FILES)\n if request.method == 'POST':\n if form.is_valid():\n data = form.clean_data\n # do stuff with the data\n return redirect(\"/url/to/redirect\")\n return render_template(\"template-name.html\", form=form)\n\n- Logical data structures that allow easy access from templates\n\n.. code:: html+jinja\n\n {% set field = form.username %}\n \n {% if field.error %}\n {{ field.error }}\n {% endif %}\n\n