如何从控制器获取值到web2py中的视图

时间:2013-05-28 18:17:37

标签: python web2py

{{(URL('default', 'test', args=[textname[i],"1","english"]))}}

我正在使用这行代码将值发送到名为test()的控制器函数

test()中,我执行一些操作并返回一个字符串。我需要在视图中显示字符串。如何再次在同一视图中从控制器获取字符串?

2 个答案:

答案 0 :(得分:0)

如果我正确地提出您的问题,您希望将控制器的返回变量显示为html。

您可以从控制器返回响应对象:

return render_to_response('url_for_your_view',{'var1': 'your string goes here'}, RequestContext(request))

然后在视图中,您可以将字符串显示为{{var1}}

答案 1 :(得分:0)

如果要在另一个操作的页面中包含一个操作的输出,则应使用LOAD() helper创建一个组件:

{{=LOAD('default', 'test.load', args=[textname[i], "1", "english"], ajax=True)}}

注意,使用ajax=True,组件将在父页面加载后通过Ajax加载。如果设置ajax=False(这是默认设置),则在首次创建父页面时,将在服务器端插入组件。

在default.py控制器中,您有:

def test():
    textname, number, language = tuple(request.args)
    result = [do something with the request.args values]
    return result

result的值将插入<div>代替{{=LOAD(...)}}