2009-05-28 7 views
0

Я работаю над Plone 3.2.1 и я сделал форму А formlib с собственным шаблоном:Plone + formlib: как ссылаться на form.pt

from Products.Five.formlib import formbase 
from Products.Five.browser.pagetemplatefile import ViewPageTemplateFile 
... 

class MyForm(formbase.PageForm): 
    ... 

    template = ViewPageTemplateFile('myform.pt') 

Я хочу, чтобы сделать простое изменение в стандартный шаблон formlib. Мой вопрос: как я могу ссылаться на части/zope2/lib/python/zope/formlib/pageform.pt внутри моего шаблона?

<!-- myform.pt --> 
<metal:macro metal:use-macro="WHAT GOES HERE??"> 
    <div metal:fill-slot="extra-info"> 
    I just want to put a text before the standard formlib template 
    </div> 
</metal:macro> 

ответ

1

Наконец, я нашел ответ:

<html xmlns="http://www.w3.org/1999/xhtml"            
     xmlns:metal="http://xml.zope.org/namespaces/metal" 
     xmlns:tal="http://xml.zope.org/namespaces/tal" 
     xmlns:i18n="http://xml.zope.org/namespaces/i18n" 
     metal:use-macro="context/main_template/macros/master"> 
<body> 
    <div metal:fill-slot="main"> 
    <div metal:use-macro="context/@@base-pageform.html/macros/form"> 
     <metal:block fill-slot="extra_info"> 
     <!-- HERE we go --> 
     </metal:block> 
    </div> 
    </div> 
</body> 
</html> 
0

Просто смотреть там (для тех, кто ищет для этого, как я): линия:

<divmetal:fill-slot="main"> 

необходимо пространство, в между div и металлом:

<div metal:fill-slot="main"> 

Thanks; очень полезное решение.