Version 24 (modified by rharkins, 7 years ago) (diff)


Hey You! Don't use this yet!!!

Provides forms anywhere there is a wiki


This plugin aims to allow for forms anywhere there is a wiki. This is meant to supersede the previously limited-scope ChecklistPlugin.


Let's start by looking at a simple laundry list. This list will be automatically bound to whatever page it appears in by default (this can be configured). Once the plugin is installed, simply edit your /wiki/Sandbox and chuck this in:

== Laundry list example ==


|| || '''Who''' || '''When''' || '''What''' ||
|| [tf:wash] || [tf.who:wash] || [tf.when:wash] || Wash Clothes ||
|| [tf:dry] || [tf.who:dry] || [tf.when:dry] || Dry Clothes ||
|| [tf:fold] || [tf.who:fold] || [tf.when:fold] || Fold Clothes ||


Once saved, you should get something looking like this:

Example of blank laundry list

From here, you can check some things and click "Submit Query" you'll see the fields change. After a few clicks it might look like this:

Example after a few checks.

There is much more planned for this plugin than simply checklists. See TracFormsPlugin/Docs for more information on the various ways to use this tool.

Bugs/Feature Requests


Existing bugs and feature requests for TracFormsPlugin are here.

If you have any issues, create a new ticket.


Download the zipped source from here.


You can check out TracFormsPlugin from here using Subversion, or browse the source with Trac.


Once you have downloaded the source, do the following (your mileage may vary on the actual directory names depending on what you downloaded):

cd tracformsplugin
cd trunk
cd 0.11

Method 1: Lay an egg

From here, you can do one of two things. The first is building an egg to drop into your project's plugins directory or your master project's plugins directory (replace or define $TRACENV_DIR with your project's base directory):

python bdist_egg
cp dist/TracForms-0.1-*.egg $TRACENV_DIR/plugins/

Method 2: Full install

Or, you can build and install and enable the right bit in the configuration file (replace or define $TRACENV_DIR with your project's base directory):

python install
vi $TRACENV_DIR/conf/trac.ini

Within here, locate (or create) your [components] section and add the following:

 tracforms.* = enabled

Upgrading the database

Either of the above methods require a database upgrade...

trac-admin $TRACENV_DIR upgrade

Recent Changes

[11562] by hasienda on 2012-05-14 23:55:10
TracFormsPlugin: (i18n) Update message catalog and German translation.
[11561] by hasienda on 2012-05-14 23:54:12
TracFormsPlugin: Move datetime rendering into template.

This way time stamp format is choosen per request according to preferences
of the user session, while it has been tied to server locale setting before.

[11283] by hasienda on 2012-02-19 23:18:45
TracFormsPlugin: Add optional write protection to input fields, refs #3264, #5353, #8715 and #9640.

A new keyword argument '-mode', for now exclusive to tf.input and tf.textarea,
with value to choose from the following list:

  • ro - input blocked, like static text, but in non-editable form field
  • rd - same as 'ro', but don't display stored value but default instead
  • rw - regular input behavior at all times (default)
  • once - initially 'rw', but blocked ('ro') after first form submission

It's an optional argument, retaining full backwards-compatibility
with existing field definitions by choosing -mode=rw as implicit default.


Author: rharkins

Attachments (2)

Download all attachments as: .zip