Malthe Borch wrote:
Currently views are registered as components providing
zope.interface.Interface; this is unfortunate since other kinds of
components may use the same specification, namely (context, request).
An example of this is ``IAbsoluteURL``; it clashes with the resources
view*.
In the words of Christian Theune: "I think it looks like one should
never ask for adaptions to Interface."
I suggest we then register views as components providing
``zope.component.IView``; browser views should provide
``zope.publisher.interfaces.browser.IBrowserView``.
IBrowserView is IMHO not the right one. Anything, including absolute_url
and standard_macros, can be a browser view. But browser views aren't
necessarily *publishable*. In other words, Zope 3 won't resolve URLs
like http://localhost:8080/standard_macros or
http://localhost:8080/absolute_url. (Zope 2 will publish such URLs which
is quite terrible).
Browser pages (as opposed to browser views) are components that *are*
publishable on the other hand. That's because they provide
IBrowserPublisher (IBrowserPage extends this interface). That's why I
think IBrowserPage is the right interface to adapt to. But perhaps it
should be something else, though either way it should be based on
IBrowserPublisher.
_______________________________________________
Zope-Dev maillist - [email protected]
http://mail.zope.org/mailman/listinfo/zope-dev
** No cross posts or HTML encoding! **
(Related lists -
http://mail.zope.org/mailman/listinfo/zope-announce
http://mail.zope.org/mailman/listinfo/zope )