Django视图向模板传递数组并遍历渲染
本文介绍在Django中如何将数据库查询返回的数组数据传递给前台模板。通过视图函数执行SQL查询获取数据,利用render函数将数据字典传入模板,并在HTML中使用for循环遍历数组元素,实现动态内容展示。
Django视图向模板传递数组并遍历渲染
在Django开发中,将后台获取的数组数据传递给前台模板进行展示是一个常见需求。
具体实现步骤如下:
def modifyBtn(req,modifyip):
print modifyip
conn= MySQLdb.connect(
host='localhost',
port = 3306,
user='root',
passwd='1234567',
db ='DEVOPS'
)
cur = conn.cursor()
a = cur.execute("select ip,info,env from machine_info where ip=%s ",[modifyip])
info = cur.fetchall()
print info
print type(info)
return render(req,'cmdb/modifyBtn.html',{'info':info})
首先,在Django项目目录下的模板文件中查看或编辑按钮修改页面,例如执行命令:node2:/django/mysite/news/templates/cmdb#cat modifyBtn.html
<html>
<head>
<title>运维平台</title>
<link rel="stylesheet" type="text/css" href="/static/Css/Equipment/modifyBtn.css" rel="external nofollow" >
<link rel="stylesheet" type="text/css" href="/static/Css/Public/header.css" rel="external nofollow" >
<link rel="stylesheet" type="text/css" href="/static/Css/Public/menu.css" rel="external nofollow" >
</head>
<body>
<include file="Public:header"/>
<div class="content">
<include file="Public:menu"/>
<div class="con fl">
<form id="condition" action="/static/modifyEquipment" method="post">
{% for x in info %}
<label class="condition">地址</label><input type="text" name="ip" class="equipment_sz" value={{x.0}}>
<label class="condition">描述</label><input type="text" name="info" class="equipment_sz" value={{x.1}}>
<label class="condition">环境</label><input type="text" name="env" class="equipment_sz" value={{x.2}}>
<input type="submit" value="设备修改" class="equipment_add_btn">
{% endfor %}
</form>
</div>
</div>
</body>
<script type="text/javascript" src="/static/Js/jquery-2.2.2.min.js"></script>
<!-- <script type="text/javascript" src="/static/Js/Equipment/addEquipment.js"></script> -->
</html>
以上关于Django将数组传递给前台模板的方法介绍完毕,希望能为读者提供有价值的参考。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













