为Z SQL方法设置变量

时间:2010-06-03 08:55:55

标签: sql plone zope

在Plone中,我有一个Z SQL方法:

SELECT [aapp_qtitle]
      ,[aapp_mtitle]
      ,[aapp_sdate]
      ,[aapp_duration]
FROM [AAPP].[dbo].[M_PageBodyElement] where [aapp_id]=<dtml-sqlvar aapp_id type=int>

如何在Plone页面代码中设置aapp_id的值?

好的,谢谢马修,确切的模板代码是什么?我试过了:

<p tal:define="AAPPInfo python:here.get/AAPPInfo(aapp_id=100003).dictionaries()"></p>
<p tal:repeat="records context/AAPPInfo">
<span tal:replace="records/aapp_qtitle">Title: </span><br>

但我得到的名字'AAPPInfo'没有定义错误。

2 个答案:

答案 0 :(得分:1)

例如,如果ZSQL方法被称为'getAAPPInfo',你可以像这样用Python调用它:

AAPPInfo = context.getAAPPInfo(aapp_id=1).dictionaries()
if AAPPInfo:
  print AAPPInfo[0]['aapp_qtitle']

或类似。

从页面模板中,您需要使用表达式tal:define="AAPPInfo python:here.getAAPPInfo(aapp_id=1).dictionaries(),然后您可以正常迭代它。

答案 1 :(得分:0)

AAPPInfo猜测你所谓的SQL方法。你也忽略了我的语法并编写了自己的语法,这就是为什么它不起作用。