Version 10 (modified by 15 years ago) (diff) | ,
---|
Dynamically change field depending on value of parent
Description
Dynamically change fields options by their parent fields.
Note: This plugin requires simplejson!
easy_install simplejson
Bugs/Feature Requests
Existing bugs and feature requests for TracTicketChainedFieldsPlugin are here.
If you have any issues, create a new ticket.
Download
Download the zipped source from [download:tracticketchainedfieldsplugin here].
Source
You can check out TracTicketChainedFieldsPlugin from here using Subversion, or browse the source with Trac.
Install
You can install this software as normal Trac plugin.
- Uninstall TracTicketTemplate if you have installed before.
- Change to the directory containning setup.py.
- If you want to install this plugin globally, that will install this plugin to the python path:
- python setup.py install
- If you want to install this plugin to trac instance only:
- python setup.py bdist_egg
- copy the generated egg file to the trac instance's plugin directory
cp dist/*.egg /srv/trac/env/plugins
- Config trac.ini:
[components] tcf.* = enabled [tcf] hide_empty_fields = false
"hide_empty_fields" is the option which enable "hide fields when there are no supplied options", default is false. See #5638 for more details.
Example
For example, there are 3 fields: brand, phone, OS. When brand changes, phone field will change it's options to show only phone belongs to that brand. When phone changes, OS field will change too.
- Add 3 custom fields in trac.ini
[ticket-custom] tcf_brand = text tcf_brand.label = Brand tcf_brand.order = 3 tcf_phone = text tcf_phone.label = Phone tcf_phone.order = 4 tcf_os = text tcf_os.label = OS tcf_os.order = 5
- Go to Admin -> Chained Fields, edit the config
{ "tcf_brand": { "Nokia": { "tcf_phone":{ "5800": { "tcf_os":{ "Symbian": {}, "Android": {} } } } }, "SE": { "tcf_phone":{ "": { "tcf_os":{ "": {} } } } }, "Apple": { "tcf_phone":{ "iPhone": { "tcf_os":{ "OS X": {}, "OS": {} } }, "iPhone 3G": { "tcf_os":{ "OS X": {}, "other": {} } } } } } }
Please note: if no options for some fields, like "SE" above, you still need supply the full structure, with empty string as keys.
Snapshot
Recent Changes
Author/Contributors
Author: richard
Contributors:
Attachments (1)
- TracTicketChainedFieldsPlugin.png (6.1 KB) - added by 15 years ago.
Download all attachments as: .zip