Dieter Maurer wrote:
> Chris McDonough wrote at 2006-3-13 10:21 -0500:
> > ... silly id restrictions ...
> >Here's my current monkeypatch to Zope to unrestrict a good number of
> >characters:
> >
> >def patch_objectmanager_badid():
> >     """ Causes Zope to be less restrictive in the set of characters it
> >     accepts as valid within object identifiers.
> >
> >     Added as acceptable: []*'!:@&#=+$
> >     """
> >
> >     import re
> >     acceptable = r'[^a-zA-Z0-9-_~,.$\(\)\[\]\*\'\!\:[EMAIL 
> > PROTECTED]&\#\=\+\$ ]'
> >     bad_id = re.compile(acceptable).search
> >     import OFS.ObjectManager
> >     OFS.ObjectManager.bad_id = bad_id
> >
> >The projects that use this patch have been in use for several years;
> >they predate Five.  I of course don't mind continuing to do this, but
> >I'd hate to have to change it temporarily (to fix this bug which
> >actually isn't a bug for me because I don't use Five for these
> >projects) and then change it again when we do the pluggable thing.
> +1
> Looks as if we had very similar project requirements...

Chris's and Dieter's requirements seem to even more confirm my proposal that we
should propertly factor this out to a name chooser adapter that everyone can
configure for themselves. Then this discussion what ObjectManager should do or
not do will become irrelevant because it won't do anything anymore :). This is
actually how Zope 3 containers work. They perform no name checks *at all*.
It's the application (in particular, the adding view) that does it.

Yuppie's concern are Zope versions 2.8 and 2.9. I say that we'd just have to
live with the fact that objects can shadow views there. Applications like the
CMF can make sure that they don't on an application-level, as Chris suggests,
preferrably through a name chooser adapter.


This message was sent using IMP, the Internet Messaging Program.
Zope-Dev maillist  -
**  No cross posts or HTML encoding!  **
(Related lists - )

Reply via email to