Movatterモバイル変換


[0]ホーム

URL:


Trac Hacks
wiki:TracFormsPlugin

Context Navigation


Contents

  1. Description
    1. Example and Documentation
  2. Bugs/Feature Requests
  3. Download and Source
  4. Installation
    1. Method 1: Lay an egg
    2. Method 2: Full installation
    3. Upgrading the database
  5. Configuration
  6. About i18n/l10n support
  7. Recent Changes
  8. Author/Contributors

Add forms for ticket description and wiki pages

Notice: This plugin is unmaintained and availableforadoption.

Description

This plugin allows you to add forms anywhere where there is a field with Trac wiki syntax.

The similarWikiFormsPlugin aims at providing even more flexibility with a sightly more complex wiki markup incompatible with that of this plugin.Additional features from this plugin have been requested here too (see#8715). For a comparison between the two plugins, seehere.

Example andDocumentation

Also see the onlinetutorial or thedocumentation (docs still in need of some corrections and updates to 0.4).

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 a new wiki resource calledSandbox/LaundryList and add this:

== Laundry list example{{{#!TracForm## An example of a TracForm. The first lines can be commentary or #! commands.##! track_fields|| || '''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 see something like this:

Example of blank laundry list

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

Example after a few checks.

Now, if you thought that was neat, make sure you have theIncludeMacro installed and fire up a new wiki page Sandbox/LaundryListUser with the following:

[[Include(Sandbox/LaundryList)]]

Note that the form is blank and you can play with the results again. This is because the default context for the form is the pageURL itself! That means that as long as a form is included on a different page (and the default context is not overridden), then each page including gets itsown version of the form's results. This works particularly well with PageTemplates.

Now, for more fun, do the same thing in a ticket. Once submitted, every ticket including the template will contain its own checklist. One obvious use for this is when creating a svn commit checklist. Simply put the checklist in the appropriate wiki location, create tickets that include the location, and voila, instant commit step-by-step. Once enough of the form becomes exposed, we should be able to work this into the workflow too (no resolving before at least paying lip service to the checklist).

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

Bugs/Feature Requests

Existing bugs and feature requests forTracFormsPlugin arehere.

If you have any issues, create anew ticket.

defect

31 / 33

enhancement

14 / 32

task

1 / 1

Download and Source

Stable Versiontracformsplugin/tags/tracforms-0.4.1downloadsubversion
Under Developmenttracformsplugin/trunkdownloadsubversion

The current stable version is usable with Python 2.6; older Python versions requiresimplejson to be installed.

Revision[10011] and above requires some dedicated permissions assigned to use new features (such as Search) as well as known TracForms features (such as the 'Update Form' button).

You can also download the entire projecthere, or checkout a copy usingSubversion.

Installation

Once you have downloaded the source, do the following (the actual directory names depend on what you downloaded):

cd tracformsplugincd trunkcd0.11

For older versions or ones still in development, go to the tags directory and then to the desired version, for example:

cd tracformsplugincd tagscd release-0.1cd0.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 setup.py bdist_eggcp dist/TracForms-0.1-*.egg$TRACENV_DIR/plugins/

Method 2: Full installation

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 setup.py installvi$TRACENV_DIR/conf/trac.ini

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

[components]tracforms.*=enabled

Upgrading the database

Either of the above methods require a database upgrade:

trac-admin$TRACENV_DIR upgrade

Configuration

Sincetracforms-0.4 you must grant form-related permissions to the relevant groups and/or users. Otherwise only users withTRAC_ADMIN permission will be able to see details and use forms.These are the permissionactions available:

FORM_VIEW
view form details, similar to ticket or wiki change history.
FORM_EDIT_VAL
enable submission of form content changes - these users will be able to see and use 'Update Form' buttons.
FORM_RESET
enable incremental and full form version clean-up by using additional action buttons on form details pages.
FORM_ADMIN
inherits all previous permissions, nothing more yet.

About i18n/l10n support

This plugin is prepared for localization.
But English message texts are still the (POSIX) default. If this isn't your preferred language, you can

  1. check if it is already available from theTrac plugin l10n project atTransifex or
  2. do it yourself (see thel10n cookbook page for Trac plugins for more details).

You've done a new translation? Superb! Contributing your translation is highly appreciated.
You could send it to the plugin's maintainer or contribute toTrac plugin l10n projectviaTransifex:

Top translations: Trac_Plugin-L10N »tracforms

http://www.transifex.net/projects/p/Trac_Plugin-L10N/resource/tracforms/chart/image_png

Kindly provided byhttps://ds0k0en9abmn1.cloudfront.net/static/charts/images/tx-logo-micro.png

Preparing the plugin from source requiresno additional steps for compiling message catalog files. Only to include translations marked as# fuzzy by the translator, you'll want to do a manual message catalog compilation with the extra-f argument before packaging:

cd tracformsplugin/python ./setup.py compile_catalog -fpython ./setup.py bdist_egg

Complaints about missinglocale directory are often a side-effect of failure to compile any message catalog for inclusion into Python egg, hence the whole path is missing. Due to a know Trac issue Babel has to be installed prior to Trac, to get it all working as expected.
Again, for more details see thel10n cookbook page for Trac plugins.

Recent Changes

16960 byrjollos on 2017-11-06 23:38:37
TracForms 0.5dev: Remove debugprint statement fromr16386

Refs#13319.

16958 byrjollos on 2017-11-04 22:59:37
TracForms 0.5dev: Log exception from macro

Refs#13319.

16954 byrjollos on 2017-11-03 17:41:27
TracForms 0.5dev: Show traceback on exception

Refs#13319.

(more)

Author/Contributors

Author:rharkins
Maintainer:none (needsadoption)
Contributors: anderson,andrewbates,jrcutler,nelsojost,hasienda

Last modified3 years agoLast modified on May 8, 2022, 6:13:17 AM

Attachments(2)

Download all attachments as:.zip

Download in other formats:


Trac Powered

Powered byTrac 1.2.6
ByEdgewall Software.


[8]ページ先頭

©2009-2025 Movatter.jp