> On Tue, Apr 06, 2004 at 03:38:03PM -0400, John Belmonte wrote:
> > I'd prefer that the mechanics of Quixote remain simple. It's easy
> > enough to build the mapping function on top of what already exists.
>
> +1. It's regrettable that people who like to use '-' in their URLs have to
> pay a penalty, but I don't think it's really worth fixing.
It's easy to subclass Publisher and do advanced _q_exports processing (well,
I might make a '_q_rename = {'foo-bar': 'foo_bar'}' attribute). You just
override get_component:
def _get_component (...):
if (hasattr(container, '_q_rename')
and container._q_rename.has_key(component)):
component = container._q_rename[component]
Publisher._get_component(self, ...)
... except get_component has turned into a module function instead of a method.
Why is that? CHANGES just says:
* Factored out the traverse_url() and get_component() method
from the Publisher class.
Now we have to do something grody like mutate the publisher module.