[Grok-dev] Re: First Experience with Grok

Philipp von Weitershausen philipp at weitershausen.de
Sun Sep 16 09:16:53 EDT 2007

Martijn Faassen wrote:
> Shane Hathaway wrote:
>> David Pratt wrote:
>>> I'd argue that Zope 3 is a framework but without one that doesn't 
>>> impose limits with what you might want to do with it. It is not 
>>> really 'contained' like any other framework. Maybe the framework 
>>> without a frame :-) It is only configuration that explicitly binds 
>>> your work together. I find it a natural place for a python programmer 
>>> but others may disagree. Zope 3 may not be well marketed - but is it 
>>> excellent? Certainly. Twisted is another example of this. Fortunately 
>>> for folks that wish to dig deeper in Zope 3, Grok's ease ought to at 
>>> least attract them to consider the journey. I am happy that Grok 
>>> provides this opportunity and a welcoming community. :-)
>> Thanks.  I know there's good stuff in there begging to be used.
>> Unfortunately, I just had a slightly disappointing experience.  I
>> entered an invalid URL and got a 404 error based on the Rotterdam skin.
>>  Ugh!  IMHO, the Rotterdam skin is an example of something Zope 3 does
>> badly.  I don't want the Rotterdam skin to exist in my site.  What is
>> the best way to remove it?  I hackishly changed some ZCML, but is there
>> a maintainable way?
> =
> The Rotterdam skin needs to die and we've intended to kill it off for 
> quite a while now. We indeed need to come up with a maintainable way to 
> do so, and this unfortunately doesn't appear entirely trivial. The 
> problem, I understand, is that if we install a package like 
> zope.app.container we typically just use its configure.zcml, but this 
> also pulls in rotterdam skin registrations.

It is unclear what you mean by Rotterdam skin registrations. The 
zope.app.container package doesn't do anything. zope.app.folder, on the 
other hand, a specific container type, registers the contents.html view 
for the Folder class. This view is not Rotterdam-specific, though it 
appears in the "ZMI" that we sometimes also call Rotterdam. Certainly 
zope.app.folder has nothing to do with Rotterdam.

I think the problem is that zope.app.zcmlfiles (which contains the 
former zope.app/configure.zcml, mother of all zope.app's ZCML files) 
contains the following line:

   <browser:defaultSkin name="Rotterdam" />

For starters, we could override this with:

   <browser:defaultSkin name="Basic" />

but this is really a choice that 'grok' (the package) shouldn't make but 
the user's application. Once the skin and layer work has landed, 
something like this should probably be part of the standard grokproject 

http://worldcookery.com -- Professional Zope documentation and training

More information about the Grok-dev mailing list