【问题标题】:HTML form button not deleting rows from sqlite databaseHTML表单按钮不从sqlite数据库中删除行
【发布时间】:2017-06-05 14:21:18
【问题描述】:

我使用 python 和 html 在 pythonanywhere 中建立了一个论坛,用户可以在其中发布插入到 sqlite 数据库的信息。每个帖子的底部都有一个删除按钮,该按钮将从数据库中删除它所在的帖子并刷新页面。现在,删除按钮仅在帖子保留时刷新页面。我想知道如何编辑代码,以便删除附加表单按钮的帖子并刷新页面。

HTML代码sn-p

{% for post in forumposts %}
<tr>
    <td>
    <h1>{{post[1]}}</h1>
    <h3>{{post[3]}}</h3>
    <p>{{post[2]}}</p>
    <p>{{post[6]}}</p>
    <img src="{{post[7]}}" alt="Wrong image link.">
    <p></p>
    <form action="{{ url_for('delete_post') }}" method=POST class=delete-post>
    <input type=hidden value="{{ postid }}"name=post_to_delete></input>
    <input type=submit></input>
    </form>
    </td>
</tr>
    {%endfor%}
</table>

Python代码sn-p

@app.route('/delete', methods=['POST'])
def delete_post():
    db = connect_db()
    db.execute('DELETE FROM posts WHERE postid = ?', [request.form['post_to_delete']])
    db.commit()
    db.close()
    return redirect(url_for('forum'))

【问题讨论】:

  • 您的 python 控制台中是否出现任何错误?
  • 你知道如何在 pythonanywhere 上查看 python 控制台吗?
  • 不,我没有。谷歌怎么说?

标签: python html sqlite flask


【解决方案1】:

让代码正常工作。

HTML

{% for post in forumposts %}
<tr>
    <td>
    <h1>{{post[1]}}</h1>
    <h3>{{post[3]}}</h3>
    <p>{{post[2]}}</p>
    <p>{{post[6]}}</p>
    <img src="{{post[7]}}" alt="Wrong image link.">
    <p></p>
    <form action="{{ url_for('delete_post') }}" method=POST class=delete-post>
    <input type=hidden value={{post[0]}} name=post_to_delete></input>
    <input type=submit value=POST></input>
    </form>
    </td>
</tr>
    {%endfor%}
</table>

Python

@app.route('/delete', methods=['POST'])
def delete_post():
    if request.method == 'POST':
        db = connect_db()
        db.execute('DELETE FROM posts WHERE postid = ?', (request.form['post_to_delete'],))
        db.commit()
        db.close()
        return redirect(url_for('forum'))

希望这对某人有所帮助。 :)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-11-01
    • 2018-06-08
    • 2011-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-11
    相关资源
    最近更新 更多