在 Plone 中创建BrowserView时,我知道我可以选择使用ZCML配置模板,如下所示:
<configure
xmlns:browser="http://namespaces.zope.org/browser"
>
<browser:page
…
class=".foo.FooView"
template="foo.pt"
…
/>
</configure>
或者在代码中:
# foo.py
from Products.Five.browser.pagetemplatefile import ViewPageTemplateFile
from zope.publisher.browser import BrowserPage
class FooView(BrowserPage):
"""
My View
"""
def __call__(self):
return ViewPageTemplateFile('foo.pt')(self)
这两种方法有什么区别吗?它们似乎都产生了相同的结果。
子问题:我知道有BrowserView
一个可以导入的类,但通常每个人都使用BrowserPage
. 如果两个类别之间存在任何显着差异怎么办?