我正在创建一个网页,该网页显示数据库/表中存在的对象列表。我有一个存储过程,它从表中检索数据并将数据与将解析到表中的每一列相关联。
<table id="fileTable" class="display">
<thead>
<tr>
<th>Jobstream Id</th>
<th>Date</th>
<th>Server Name</th>
<th>Request Time</th>
<th>Status</th>
<th>StepStatus</th>
<th>LastUpdate</th>
<th>DeleteJob</th>
</tr>
</thead>
<tbody>
#for $i in range(0,$rows.__len__())
<tr>
<td>$rows[i].get('JobstreamName')</td>
<td>$rows[i].get('Date')</td>
<td>$rows[i].get('ServerName')</td>
<td>$rows[i].get('RequestTime')</td>
<td>$rows[i].get('Status')</td>
<td>$rows[i].get('StepStatus')</td>
<td>$rows[i].get('LastUpdate')</td>
<td><input type="submit" value="Delete"/></td>
</tr>
#end for
</tbody>
</table>
每行末尾都会有一个“删除”按钮,用于删除用户希望的任何行(在数据库中)。行的删除应该在存储过程中运行。我在 python 中有一个函数可以执行存储过程。
但是,我不知道如何连接将返回“JobStream Id”和“日期”的按钮,该按钮用作执行存储过程的参数。
我使用 Cheetah 作为 web 开发工具来运行 python 代码。感谢我能得到的任何帮助,在此先感谢。
编辑: 让我在这里改写一下自己。因此,网页中生成的表格数据正在使用存储过程从数据库中提取。我正在尝试添加一个功能(每行末尾有一个删除按钮),允许用户删除任何行。因此,我需要将html 变量传递给我的 python 变量以运行另一个存储过程,但我无法这样做。希望这能澄清大部分的困惑。谢谢
这是完整的代码:
def getJobStreamStatus(Delete):
Delete = 'Just a random string'
user,pwd,server,db = SPCaller.parseLogin('DMClient@gpdevdb81\\dmresrchdbdev.EquityData')
db = DB.dbConn(computerName=server,databaseName=db,userName=user,password=pwd)
#results = SPCaller.readSPReturnDict('getJobStreamRerunStatus',None, 'DMClient@gpdevdb81\\dmresrchdbdev.EquityData')
cols, rs = db.getResultSetFromSP('getJobStreamRerunStatus',None)
#html = []
definition = """<br><br><br><br><br><br><HR>$title
<table id="fileTable" class="display">
<thead>
<tr>
<th>Jobstream Id</th>
<th>Date</th>
<th>Server Name</th>
<th>Request Time</th>
<th>Status</th>
<th>StepStatus</th>
<th>LastUpdate</th>
<th>DeleteJob</th>
</tr>
</thead>
<tbody>
#for $i in range(0,$rows.__len__())
<tr>
<td>$rows[i].get('JobstreamName')</td>
<td>$rows[i].get('Date')</td>
<td>$rows[i].get('ServerName')</td>
<td>$rows[i].get('RequestTime')</td>
<td>$rows[i].get('Status')</td>
<td>$rows[i].get('StepStatus')</td>
<td>$rows[i].get('LastUpdate')</td>
<td><input type="button" value="Delete" name='btnEdit' class='btnEdits' /></td>
</tr>
#end for
</tbody>
</table>
"""
return str(Template(definition, searchList=[{'cols':cols, 'rows':arrToDict(cols,rs),'Delete':Delete,'title':'Showing all jobs in the rerun queue with status <b>waiting: 0, running: 2, and failed: 3</b><br><br>'}]))