我可以在视图中使用变量引用字典的键名

时间:2013-08-15 05:55:47

标签: python web2py

我在控制器中生成了一堆数据,我希望以编程方式访问,使用循环。

字典条目具有键“Point1”,“Point2”,“Point3”等,

如果我想用他们填充我的视图中的表,迭代地,我想我可以使用类似的东西:

<td>{{="Point{0}".format(407)}}</td>

但这不起作用,它返回文本“Point407”

以下代码:

<td>{{=Point407}}</td>

按照我的预期工作,显示字典条目“407”的内容。

2 个答案:

答案 0 :(得分:2)

而不是在你的控制器中有这个,

def x:
   return {"Point407":1, "Point408":2}

考虑一个更合适的结构:

def x:
   return {"points": {'407':1, '408':2}}

然后你可以在你看来这样做:

<td>{{=points.get('407')}}</td>

答案 1 :(得分:2)

我想你可以这样做:

{{=globals()['Point{0}'.format(407)]}}

但是如果您的控制器返回类似的内容会好得多:

return dict(points=[point1, point2, ...])

然后在视图中:

{{=points[0]}}