Plone 4:将参数传递给视图类(BrowserView)

时间:2012-01-31 11:48:50

标签: python plone

我一直关注this URL来帮助我使用BrowserView创建模板视图。到目前为止,它工作正常,我能够创建一个带有视图类的模板。

我需要知道的是,是否可以将参数传递给视图类中的方法,即

from Products.Five import BrowserView

class Html(BrowserView):
    def still_dreaming(self):
        msg = "Some people are still dreaming"
        return msg

我需要在still_dreaming函数中添加一个额外的参数,并在函数内处理它,如下所示:

def still_dreaming(self, some_arg):
        msg = some_arg + " Some people are still dreaming"
        return msg

然后我需要调用该函数并从我的模板中传递一个参数。像这样:

<p tal:content="view/still_dreaming(item/publication_date)"></p>

不幸的是,我不知道将参数传递给方法的正确方法。任何指针都将非常感激。

编辑: item/publication_date只是一些变量,可能是任何东西。它刚刚被定义过。

1 个答案:

答案 0 :(得分:7)

  <p tal:content="python:view.still_dreaming(item.publication_date)" />

您可以在TAL表达式中使用TAL遍历语法(默认),Python语法或字符串语法。

http://collective-docs.readthedocs.org/en/latest/functionality/expressions.html