Martin Aspeli wrote:
2. I finally found the "+" view in container/browser, but all
uses of it are as "/@@+/newitem.html". I could have sworn
I saw the "+" used w/o the "@@" prefix someplace but can't
find it again. Did I indeed imagine ever seeing
No, I've seen this too. As far as I understand, the @@ is optional, but
useful to disambiguate views from other things. If you had an object in
/ called '+', /+ would find that, not the add view.
I finally found uses of "+" as well as "@+", so I wasn't crazy. I was
confused because the "+" wasn't special-cased in the scattered traversal logic
and because I first saw it in the persistent schemas component, which didn't
seem to fit into anything going on.
I was also trying to understand the trailing '=' on those URLS, but couldn't
search for just a '+' or '='. I've stepped thru all the traversal and form
add/edit components and understand how it fits together now.
A few odd things though, the add and edit code looks written by two different
people, with different styles and names. And in some places there is
aggressive removal of leading '@@' without checking if there is an item by
that name first, so that if you use the same name for two kinds of things, the
view will always be found but not the item.
3. What happens if you register a utility or adapter with
the -exact- same criteria including the same name? Does
a queryAdapter() lookup return the oldest or newest?
Is that a legitimate way of overriding, other than
using an overrides.zcml?
Did you try it?
Haven't had the time to set up the test case re several ZCML files and so
forth - was hoping for an off-the-cuff answer, as I have a long list here of
other, more novice, experiments to try to understand the boundary cases and
Zope3-users mailing list