0

在 pylons 中,我如何使用在类中被认为是全局的变量,例如使用 self,在 pylons 中使用 self 似乎不起作用。

假设我在控制器中有:

一个.py:

class AController(BaseController):

    def TestA(self):
        text = request.params.get('text', None) 
        self.text = text
        redirect(url(controller = 'A', action = 'TestB'))

    def TestB(self):
        render '%s' % self.text

出现错误,'AController' 对象没有属性'text',那么我如何在 pylons 中使用 TestB 显示基于 TestA 的 'text' 或 'self.text'

4

1 回答 1

0

我一直在用我的 pylons 控制器做类似的事情。您遇到的问题是,如果您先调用 TestB,则永远不会定义 self.text 。您需要做的就是首先定义它。

这就是我要使您的示例正常工作的方法:

class AController(BaseController):

    text = ''

    def TestA(self):
        text = request.params.get('text', None) 
        self.text = text
        redirect(url(controller = 'A', action = 'TestB'))

    def TestB(self):
        render '%s' % self.text
于 2012-10-16T08:23:37.837 回答