[Zope3-Users] viewtemplate

eXt restless.being at gmail.com
Fri Oct 27 09:28:00 EDT 2006


Hi all

  I recently read Stephan Richter's blog post: 
http://blogs.lovelysystems.com/srichter/2006/09/20/the-skin-browser-and-lovely-systems-new-development-workflow 
and "intendent scope of viewlets" thread: 
http://thread.gmane.org/gmane.comp.web.zope.zope3.user/4652/focus=4652.

I like the idea behind viewtemplate very much (separation of template and view 
code), but I've some problems with putting all of this together. Let me 
summarize:

1. Views and Viewlets belong to the layer

2. Templates belong to the skin

3. ViewletManagers belong to.. ? 

4. Lovely's packaging practices says that: 
    - views should be placed and registered in 
project.browser.layer.<subpackage_for_the_view_impelentations> 
    - templates should be placed and registered in project.browser.skin 
package
    - viewletmanagers... ? 

ViewletManagers may have a class and a template, VMs are called from 
templates, viewlets are registered for VMs. Shouldn't it be resolved by 
<template> tag which registers a template with ViewletManager as it is done 
for Viewlets and Views?

One more thing is a layer declaration such as (from Stephan's post):

<browser:viewlet
    name="bloglist"
    for="myproject.interfaces.IBlog"
    manager="myproject.browser.interfaces.IContent"
    view="myproject.browser.blog.BlogPage"
    class="myproject.browser.blog.BlogList"
    layer="myproject.browser.IProjectLayer"
    permission="zope.Public"
    />

while template is registered for skin:
<browser:template
    template="bloglist.pt"
    layer="myproject.browser.skin.IProjectSkin"
    for="myproject.browser.blog.BlogList"
    />

I'm pretty new to the skinnig concept. What is the purpose of IProjectLayer? 
Is it that views and viewlets are registered to IProjectLayer which 
is "project marker" interface, while templates are registered for skins. As a 
result we have stable project's code base and skins which are just templates.

Any discussion on the above topics will be appreciated :)


-- 
Jakub Wisniowski


More information about the Zope3-users mailing list