0
我知道,這是:-)Zope 2:「模板」和「視圖」有什麼區別?
幼稚的問題本來POP操作上我的腦海裏Zope 2: How to properly 「browser:page」 to make a page available everywhere?
我知道,這是:-)Zope 2:「模板」和「視圖」有什麼區別?
幼稚的問題本來POP操作上我的腦海裏Zope 2: How to properly 「browser:page」 to make a page available everywhere?
視圖是基於環境和要求提供輸出調用適配器。
模板是基於模板渲染一段文本的可調用的。它們通常用於視圖。
注意,視圖可以返回文本不使用模板:
from zope.publisher.browser import BrowserView
class MyView(BrowserView):
def __call__(self):
return "Hello world, I am located at {0}".format(self.context.absolute_url())
視圖也可以通過其他的Zope代碼中使用,而自身不被髮表。 Zope代碼在內部使用了很多視圖。
所以'view'處理由一個(或多個)'模板'生成的HTML片段中定義的動作。那些動作改變了底層模型(比如'OFS.Folder'),對嗎? –
他們*可以*做到這一點,但不一定。但是,是的,上下文可以是「OFS.Folder」。 –
那麼爲什麼我們需要一個新層('view')?我不明白「視圖」的目的。在我的困惑中放縱一下,但我還沒有在其他網頁框架中看到類似的模式,這些模板通常以模板→HTML→動作→模型的形式出現。 –