我正在开发一个基于网络的表单,用于跟踪产品的创建和修复。每个产品都包含许多组件,每个组件都有自己的序列号和硬件版本。我有一个用于创建产品的工作表单,并希望使用相同的模板来加载已存在的产品中的所有内容的序列号,以便在更换程序集时,我们可以跟踪新的序列号。我正在使用flask和mysql。
<label class="control-label col-sm-2" for="frontCameraSN">Front Camera SN:</label>
<input type="text" class="form-control col-sm-4" name="frontCameraSN" required value = {{ camera_front_SN }}>
<label class="control-label col-sm-2" for="rearCameraSN">Rear Camera SN:</label>
<input type="text" class="form-control col-sm-4" name="rearCameraSN" required value = {{ camera_rear_SN }}>
每个输入的值对应于数据库中的列。当我运行查询时,它返回一个元组,该元组本质上是一个字典,其中列作为键,数据作为值。如何将这个元组分解,以便它是变量的集合,每个变量的键都是名称?
这是返回的内容
{'cart_SN': '123', 'center_SN': '2983098', 'drive_SN': '098', 'steer_front_SN': '093280', 'steer_rear_SN': '8098', 'led_1_SN': '098', 'led_2_SN': '098', 'led_3_SN': '098', 'led_4_SN': '098', 'camera_front_SN': '098', 'battery_board_SN': '098', 'speaker_board_SN': '089', 'ibcs_SN': '098'}
这就是我处理查询的方式
cartSN=request.form['cartSN']
db = MySQLdb.connect(host="localhost",
user="Illnevertell",
password="itsasecret",
db="thispartisright")
sql = "SELECT * FROM cart_data.cart_info WHERE cart_SN = "+cartSN
cur = db.cursor(MySQLdb.cursors.DictCursor)
cur.execute(sql)
results=cur.fetchall()
return redirect('/carts/build')
我想将变量作为参数传递给重定向以填充表单。
答案 0 :(得分:0)
我已经弄明白了。而不是使用
fecthall()
我切换到
fetchone()
因为我一次只返回一行。然后我使用**结果将结果传递给重定向。效果很好。