如何循环通过SQLALchemy返回的对象,并处理每一行并将其显示为HTML

2024-10-01 15:33:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我在我的视图.py它工作得很好,我可以在HTML页面中看到结果

在视图.py在

def listallcams():
    emptlist = [] # an empty list for holding processing record values
    camtab = SVSIpCamReg.query.filter_by(u_id = current_user.id).all()
    for rec in camtab:
        dkey = rec.key
        bdkey=bytes(dkey)
        f = Fernet(bdkey)
        bcamurl = bytes(rec.camurl_hash)
        camurl =f.decrypt(bcamurl)
        emptlist.append(camurl) #0
        emptlist.append(rec.sview) #1
        emptlist.append(rec.camregdate) #2
        emptlist.append(rec.sitename) #3
    return render_template('cam/viewallcam.html',allcam = emptlist)

Html模板页

^{pr2}$

执行此页面后,我在该页面中没有任何记录。在

现在我需要在将这些行数据发送到HTML页面之前对其进行操作。在这种情况下,我有一个flask代码中的forloop,它可以遍历这个对象,我可以把行操作代码放在forloop中,就像预期的那样工作。在

现在,当我有一个以上的记录来处理它时,我将如何存储for循环中已处理的行,然后将它们发送到html页面以显示它。在

当我调试这段代码时,model类的SVSobj将行作为列表。在

有没有什么地方可以让我轻松地迭代SQLAlchemy查询返回的数字行,然后处理这些行并将它们发送回HTML页面(类似于普通应用程序中的光标)

很抱歉问这么幼稚的问题,但这是长期以来困扰我的问题。在

我真的很感谢你在这方面的时间和研究


Tags: 代码py视图idforbyteshtml页面
1条回答
网友
1楼 · 发布于 2024-10-01 15:33:11

试试这个。在

def listallcams():
   camtab = SVSIpCamReg.query.filter_by(u_id = current_user.id).all()
   for rec in camtab:
      dkey = rec.key
      bdkey=bytes(dkey)
      f = Fernet(bdkey)
      bcamurl = bytes(rec.camurl_hash)
      camurl =f.decrypt(bcamurl)
      rec.camurl = camurl
   return render_template('cam/viewallcam.html',allcam = camtab)

我们所要达到的目的是把我们感兴趣的相机拿来。然后我们遍历它们,并为每个对象添加一个属性(“camurl”属性)

在此之后,您现在应该能够使用html中的对象了。在

^{pr2}$

相关问题 更多 >

    热门问题