[Zope3-dev] Re: "for" attribute not checked in zcml

Martin Aspeli optilude at gmx.net
Sun Jun 10 07:23:10 EDT 2007


Christophe Combelles wrote:
> Hello,
> 
> Many zcml directives have a "for" attribute, which take an interface as 
> argument. Absent-minded people like me sometimes happen to put a real class 
> instead of an interface in the "for" attributes.
> 
> * On browser:page, one can put a real class with no error. Is it correct?

Yes. Browser views are just adapters, and adapters can be registered for 
a specific class, as well as for an interface. Think of a class as being 
an interface which is implemented by a single class only (itself).

> * On browser:containerViews, that lead to a non explicit error :
>   Error object: list.index(x): x not in list

I'm not familiar with this directive, but it sounds like a bug, or if it 
really isn't supported here, then it should throw an error.

> Is there a possibility to check this thing during startup, when zcml is parsed?
> That would save time finding out what the real problem is.

It's a feature, not a bug. :)

Martin

-- 
Acquisition is a jealous mistress



More information about the Zope3-dev mailing list