Как проверить, какая (сгенерированная) кнопка нажата в колбе Python - PullRequest
0 голосов
/ 10 марта 2019

У меня есть динамическая HTML-таблица, и в каждой строке есть кнопка «Обновить». Эта кнопка обновления открывает мод начальной загрузки, где пользователь может редактировать данные. Поэтому вопрос в том, как определить, какая кнопка открыла модал. Если бы я использовал PHP, я бы просто передал идентификатор данных в этой строке кнопке «обновить» как идентификатор и мог бы обнаружить, но не уверен, как реализовать это с помощью Flask. это 2 строки, которые я создал в html-файле:

{% for qual in qualifications %}
    <tr>
        <td>{{ qual.qualificationName }}</td>
        <td>
            <form method="post" action="">
                <<button type="submit" data-toggle="modal" data-target="#updateModal" name="updateBtn" id="{{ qual._id }}">Update
                </button>##this button is the ISSUE
            </form>
            <!-- Modal -->
            <div class="modal fade" id="updateModal" tabindex="-1" role="dialog" aria-hidden="true">
                <form method="post" action="{{setupQual/qual._id}}">
                    <input type="text" class="form-control" name="qualNameUpdate">
                </form>
            </div>
        </td>
    </tr>
    {% endfor %}
    </tbody>

Пока что моей последней попыткой был код в бэкэнде:

@app.route("/" , methods = ['POST']) #loading from db for modal updating
def loadQualToUpdate():
updateBtnId = request.form['updateBtn']
updateQualifications = db.qualifications.findOne({
    "_id": updateBtnId
})
qualName = request.form['qualNameUpdate']

updateDB = {
    "$set": {
        "qualificationName": qualName,
    }
}
db.qualifications.updateOne(updateQualifications, updateDB)
return redirect(url_for('setupQual')) #setupQual page has the Table

После того, как я узнаю, какая кнопка «обновить» была нажата, я могу использовать ее для поиска данных из mongodb и обновления, но мне нужна помощь, чтобы определить, какая кнопка «обновить» открыла модальное окно.

...