Записать изменения в файл Python из HTML при использовании флеш-сервера - PullRequest
0 голосов
/ 08 марта 2019

У меня есть проблема, которую я не могу решить.Я пытаюсь создать спринклерную систему, и я хочу отключить или включить ее время выполнения, изменив значение списка:

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 для этого проекта

...