Using the config file to get shorter tagged values
Some tagged values can get quite lengthy. If you use such a lengthy value a few times, you can store it in your project's config file.
An example of long tagged values are the permissions you set on workflow states. A key 'view' with value 'Manager, Member, Reviewer' for instance.
In tagged values, the text you type in is normally taken as a string. If you prefix your value with 'python:', it is copy-pasted literally into your code. So 'python:["a", "b"]' is put into your code as '["a", "b"]'.
The config file
ArchGenXML generates a 'config.py' in your Product's root directory, which in turn tries to import 'AppConfig.py'. So stuff you put in there is treated as if it is placed in the main config file.
Every ArchGenXML-generated file contains an import like 'from Products.YourProduct.config import *', so the variables defined in your AppConfig are directly available in all the files. This means that *you can specify shortcuts* for the tagged values.
Shorter tagged values
Example line in your 'AppConfig.py'::
EDITORS = 'Manager, Member, Reviewer'
Remember that we can use 'python:' to paste raw python code directly into the generated files. After adding above line, the original tagged value 'view' with value 'Manager, Member, Reviewer' can be shortened to the tagged value 'view' with value 'python:EDITORS'. Now that's handy :-) And if you need to change this definition you have it at a central place. No need to touch 2, 3 or more 'states' in UML where its used several times on each.
You can use this little *feature* almost everywhere, so its not reduced to workflow.
Previous:
Step by Step Instructions