[Zope3-Users] skin concepts

Lorenzo Gil Sanchez lgs at sicem.biz
Fri Mar 17 02:52:26 EST 2006


Hi all,

When trying to make my own skin I run into some problems. I have read
Stephan chapter of his book about creating a skin and it is quite useful
but still too simple for my needs.

I want to understand some concepts involved in skin development and I
haven't found any resource to read about this. I noticed that there is
no skin package inside the Zope codebase and so I couldn't find any
README.txt file as in other packages.

So here are my questions:

- What is the default view that is applied to a content object? If I
have something like this in my configure.zml:

  <page
      for="mypackage.mycontenttype"
      name="index.html"
      permission="zope.View"
      layer="mylayer"
      template="index.pt"/>

 how do I make it the default view for objects of mycontenttype?

 Related question: what is the default view for the root object in a
zope instance? I have seen how to configure the default skin in a
configuration file inside /etc but I don't know how Zope knows what view
to apply if none is provide explicitly in the URL

- What are the dialog_macros, view_macros, skin_macros and friends? I
know that they are ZPT macros but how are they related? Which one is
taken in each view? where is this wired? I've seen the basicskin package
of the Zope codebase and the file standardmacros.py but I don't
understand how it works.

- In my template.pt file I have defined a macro called 'page' and I just
noticed that changing it to another name makes my template not being
called. So I assume someone is doing something like <metal
use-macro="page"> but I'm too curious to trust magic: I want to know how
the internals of this mechanism work :)

If anyone knows some pointers I can read to answer these questions I
would be very grateful.

Thanks a lot

Lorenzo Gil



More information about the Zope3-users mailing list