Make this a base class of your ZClass to make them traversable. A Traversable object is an object that can access components of the url as parameters.
traversable
Consider the following URL:
http://www.zopesite.com/MyTraversableMethod/foo/bar
In the usual scenario, zope would search for objects called foo and bar.
foo
bar
However, if MyTraversalMethod is a traversable method, it can consume components of the url as parameters. In the above example, MyTraversalMethod would have access to the strings "foo" and "bar" which it can use for any purpose.
MyTraversalMethod
"foo"
"bar"
So where you earlier used:
/Issues?priority=high&status=open
you can now use:
/Issues/HighPriority/Open
Using this mixin class, you can make any other class traversable. Works best with DTMLDocument and DTMLMethod.
Views
Traverse
manage_traverseform
mandatoryParameters
optionalParameters
By default both the parameters are zero thus no url components are consumed.
Use the Traversal tab through the management interface to specify the number of parameters.
For example, if your object is a DTMLMethod, you can type <dtml-var traverse_param> to see the list of parameters consumed from the url.
<dtml-var traverse_param>
Consider a folder F with:
MyTMeth
Say you access the url /F/MyTMeth/foo. Should foo be interpreted as the acquired object or should it be used as a parameter for MyTMeth. To resolve this ambiguity there is the concept of mandatory and optional parameters.
/F/MyTMeth/foo