[z3-five] Overriding main_template in zcml

yary not.com at gmail.com
Thu Oct 5 04:27:44 CEST 2006


I've gotten further, but still not all the way.

My test product is called Q. In it, I subclassed CMF Site, here's the
core of it, in a file "portal.py":

  from Products.CMFDefault.Portal import CMFSite
  class QSite(CMFSite):
    meta_type='Q Site'
  InitializeClass(QSite)

-plus, there's some glue in my __init__ that I copied from CMFDefault.

I can create my Q Site and it works just like a CMFSite, good.

Then I add to my configure.zcml:
    <five:traversable class="Products.Q.portal.QSite" />

    <browser:page template="main_template.pt"
                  name="main_template"
                  permission="zope2.Public"
                  for="Products.Q.portal.QSite"

which loads without error, but when I view my QSite, it looks just the
same as it always does.

I suspect I need to add an interface for QSite? Or does CMF Site have
an interface I should be using here, that I need to add with an
"implements" directive?

Thanks in advance again...


More information about the z3-five mailing list