Form Templates

Include form-based input in topics, with unlimited, user-selectable forms per web; values stored as Meta Data

Overview

By adding form-based input to free-form content, you can structure topics with unlimited, easily searchable categories. When forms are enabled for a web and selected in a topic, the form appears in edit mode, and the contents are rendered as a table when viewing the actual page. When editing, can switch forms, if more than one is defined, or remove forms entirely. Form input values are stored as TWikiMetaData; all data is saved.

Form Templates replace TWikiCategory Tables from the previous version of TWiki.

Form Template Elements

Defining a Form Template

A Form Template is simply a page containing your form, defined in a table where each row is one form field.

  1. Create a new topic with your Form name: MyForm, ExpenseReport, InfoCategory, RecordReview, whatever you need.
  2. Create a TWiki table, with each column representing one element of an entry field: Name, Type, Size, Values, and Tooltip msessage (see sample below).
  3. For each field, fill in a new line; for the type of field, select from the list.
  4. Save the topic.

Example: Form Template
| *Name:* | *Type:* | *Size:* | *Values:* | *Tooltip message:* |
| TopClass | select | 1 | Select one..., Private, Public | must fill |
| Target   | checkbox+buttons | 3 | 1, No.2, No.3 | Select OS |
| Version | text | 16 | | OS version |

Defining a Form in One Topic

Example: WebFormTemplate of the TWiki.Know web:

Name: Type: Size: Values: Tooltip message:
TopicClassification? select 1 NoDisclosure?, PublicSupported?, PublicFAQ? blah blah...
OperatingSystem? checkbox 3 OsHPUX?, OsLinux?, OsSolaris?, OsWin? blah blah...
OsVersion? text 16   blah blah...

Defining a Form in Multiple Topics

The form template can also be defined in an alternative way by using more then one topic:

Code from:

Implementation Notes

Enabling Forms by Web

Forms are enabled on a per web basis. The WEBFORMS variable in WebPreferences is optional and defines a list of possible Form Templates. Example:

Creating New Topics with Forms

When you create a new topic in a web that has the WEBFORMS Preferences variable set, an Add Form button appears at the bottom of the page. If the WebTopicEditTemplate topic has a form added, the form will appear with values set; press Change to remove the template or to switch to a different one.

A form embedded in a topic also appears in a new topic. This is done by specifying the formtemplate parameter in the URL.

Setting Up Multiple Form Options

Form Template Data Storage

The Form Template topic name, fields and values are stored as Meta Data. The order of field/value pairs in the Meta Data is the same as in the Template.

-- JohnTalintyre - 16 Aug 2001