Personal tools
You are here: Home Products PloneFormGen
Document Actions

PloneFormGen

RSS Feed Category: Communication, Fields and widgets, Polls/Surveys — Other products by this author
A generic Plone form generator using fields, widgets and validators from Archetypes. Actions like mailing or saving form input are incorporated by included plug-in adapters.

Current release: PloneFormGen 1.2.4

Released Jun 15, 2008 — tested with Plone 3.1, Plone 3.0, Plone 2.5, Plone 2.1

Adds ratings-scale field and saved data editor.

List all releases… Full release announcement…

Get PloneFormGen for all platforms (247.5 kB)

Product Package

Get PloneFormGen for all platforms (269.5 kB)

PloneFormGen / ScriptableFields Bundle

Experimental releases

Upcoming and alpha/beta/candidate releases

  • Alpha releases should only be used for testing and development.
  • Beta releases and Release Candidates are normally released for production testing, but should not be used on mission-critical sites.
  • Always install on a separate test server first, and make sure you have proper backups before installing.

Release roadmap for PloneFormGen…

PloneFormGen 1.5 (Unreleased)
Adopt appropriate Zope 3 technologies
PloneFormGen 2.0 (Unreleased)
Exploit Plone 3.0 UI

Project Description

Project resources

This product provides a generic Plone form generator using fields, widgets and validators from Archetypes. It makes it possible to build simple contact, information-gathering or data-entry forms through Plone's interface.

To use it, create a form folder, then add form fields as contents. Individual fields can display and validate themselves for testing purposes. The form folder creates a form from all the contained field content objects.

Final disposition of form input is handled via plug in action products. Action adapters included with this release include a mailer and a save-data adapter that saves input in tab-separated format for later download. When you first add a form folder, it's configured as simple response form with input mailed to the owner.

Since PloneFormGenerator uses Archetypes fields, widgets and validators, it's also a good tool for rapidly prototyping forms intended for use with Archetypes-derived content types.

Installation

PloneFormGen may be installed as a traditional Zope product by downloading a tarball, and is also available as an egg on PyPI: just add Products.PloneFormGen to the eggs section of your buildout.

Dependencies

Requires PythonField, TALESField and TemplateFields from Jens W. Klein's ScriptableFields bundle. If you're doing a traditional product installation, use the bundle tarball. Dependencies are automatically handled in the egg install.

Plone 2.1.x users should see the README.txt file for an important note on Five version.

Translations

French
Thanks to the efforts of Pierre-Yves Landuré and Sebastien Douche, the French translation is in excellent condition.
German
Thanks to Raptus AG <www.raptus.com>.
Dutch
Thanks to Atopia <info@atopia.nl>.
Polish
Thanks to Łukasz Lichota
Spanish
Thanks to Servilio Afre Puentes of McMaster University
Hebrew (forthcoming)
Ofer Weisglass is working on this translation.
Italian
Thanks to Fabrizio Reale of Redomino Srl
Czech
A Czech translation has started, but is still in an early stage.

Rationale For This Product

  • Plone needs a general-purpose form generator that may be used for mail forms, RDBMS database interactions and other functions that don't require the Archetypes' persistence machinery.
  • Designing a form using such a form generator should not require a) work on the file system, b) creation of new content types, c) use of the ZMI (except for scripting field population or custom validation). [PloneFormMailer is an outstanding, useful product, that suffers only for its reliance on the ZMI/Formulator for design.]
  • Archetypes, in conjunction with the CMF Form Controller, has a form generator built-in. Ideally, it should be possible to repurpose the Archetypes widgets and validators (which were evidently intended to be generally useful) for a more general-purpose form generator.

How it Works

There is a Form Folder content type that's a container for field content types. Basically, you add a form folder, then add form field objects inside it. The form folder renders all the contained fields into a single form with the fields appearing in the same order as their position in the folder. When the form is submitted, the form folder validates all the submitted field data. In that sense, it's just like Formulator, but done via Plone content types rather than Zope types.

The field content types (e.g., string field, integer field, text field, selection field) can also render themselves, so that they may be individually tested.

Each field content type's schema has variables that control rendering of the field (like label, size, maxlength, default, options ...). TALESFields are used to allow for dynamic overrides.

Each field object, in addition to the fields that are part of it's schema, has a single archetype field that's not part of the schema and that is created on initialization. That's the field that's actually rendered for the view. The view method for the field renders (and validates) it. The view method for the form folder just sequentially renders (and validates) the special fields of its contained objects.

Credits

PloneFormGen is truly a community creation.

  • Archetypes has been ruthlessly mined for concepts and functionality. The base view and edit macro templates are very slightly modified versions of Archetype's base_edit and edit_macros.
  • The mail adapter is basically a tailored version of PloneFormMailer, minus the Formulator adapter machinery. Thanks to PloneFormMailer's authors, Jens Klein and Reinout van Rees.
  • Form and field icons are scavenged from Martijn Faassen's Formulator, and were edited only to add transparency to make them look a bit better on the add items menu.
  • Pierre-Yves Landure provided tremendous help with the i18n machinery.
  • Martin Aspeli, Wichert Akkerman, Eric Steele, Jens Klein and Reinout van Rees all provided valuable early feedback.

See the CHANGES.txt file for the very long list of people who helped with particular features or bugs.

by Steve McMahon last modified June 10, 2008 - 15:11

For any issues with the web site functionality, please file a ticket.

Please consult the policy on plone.org content if you want your content published on this site.

Servers and hosting by