我有一个我无法解决的问题。我正在尝试制作自动喷水灭火系统,我想通过更改列表的值来禁用或启用其运行时间:
zoneList = [
['Zone1', 17, .1, 'enable'],
['Zone2', 27, .1, 'disable']]
我使它可以在前端更改值,但在后端不会更改
这是我的文件结构:
app.py
zoneList.py
templates/
config.html
这是烧瓶路线:
@app.route('/config', methods=['POST', 'GET'])
def config():
if request.method == 'POST':
status = request.form['status']
x=0
for item in zoneList:
if status == item[0]:
if item[3] == 'enable':
zoneList[x][3] = 'disable'
return redirect('/config')
else:
zoneList[x][3] = 'enable'
return redirect('/config')
else:
x+=1
return render_template('config.html', zoneList=zoneList)
这是html代码:
{% for value in zoneList %}
<tr>
<td>{{ value[0] }}</td>
<td>{{ value[1] }}</td>
<td>{{ value[2] }}</td>
<td>{{ value[3] }}</td>
<td>
<form method='POST'>
<button type="button" class="btn btn-link text-primary" name='edit' value='configEdit'> <i class='material-icons'>
edit
</i>
</button>
<button type="submit" class="btn btn-link {{'text-success' if value[3]=='enable'}} {{'text-danger' if value[3]=='disable'}}" name='status' value={{value[0]}}>
<i class='material-icons font-weight-bold'>
power_settings_new
</i>
</button>
<button type="button" class="btn btn-link text-dark" name='delete' value='delete'>
<i class='material-icons'>
delete
</i>
</button>
</form>
</td>
</tr>
{% endfor %}
我知道我错过了一些东西,但我没有太多经验。也许我应该改用数据库,比如 PostgreSql。
我在这个项目中使用 Raspberry Pi Zero W