Python:如何在 Flask 应用程序的表格中显示来自 MySQL 查询的数据

标签 python mysql sql flask

我是 Python/flask 的新手,在处理一些数据库问题时遇到了问题。

我能够在不同的函数中连接到 MySQL 数据库,并使用 wtforms 从插入数据库的用户那里获取表单输入。现在我想使用 jinja 模板以表格格式在“仪表板”页面上显示存储在数据库中的数据。每次有人提交新表单时,我都希望表格扩展以包含该数据。

但是,似乎根本没有显示任何内容,即使是现有数据也让我相信我在下面的第二个代码片段中做错了什么。我在运行 python 文件时没有收到任何错误,所以也许我做错了 HTML 模板?

数据库连接(dbconnect.py):

import MySQLdb

def connection():
    # Edited out actual values
    conn = MySQLdb.connect(host="",
                           user="",
                           passwd="",
                           db = "")
    c = conn.cursor()

    return c, conn

主要的python代码(不知道是否需要try/except):

from dbconnect import connection
from flask import Flask, render_template

@app.route('/dashboard/')       
def display_deals():

    try:
        c, conn = connection()

        query = "SELECT * from submissions"
        c.execute(query)

        data = c.fetchall()

        conn.close()

        return data

        return render_template("dashboard.html", data=data)

    except Exception as e:
        return (str(e))

HTML:

<table border="1" cellpadding="5" cellspacing="5">
    {% for row in data %}
        <tr>
        {% for d in row %}
            <td>{{ d }}</td>
        {% endfor %}
        </tr>
    {% endfor %}
</table>

最佳答案

在返回呈现的模板文件之前,您有一个return 语句。

关于Python:如何在 Flask 应用程序的表格中显示来自 MySQL 查询的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43310475/

相关文章:

mysql - SQL: ORDER BY `date` AND START WHERE`value` ="something"?

mysql - 如何修复损坏的 xampp 'mysql.user' 表?

php mysql 爆炸数据库插入

python - numpy - 选择两个数组中一列相等的行

python - ndarray.item(arg) 和 ndarry[arg] 有什么区别?

python - 使用点分语法的子包中模块的包内引用

python - 类似pandas语句的SQL where子句

python - 找不到 webdriverprefs.json - pyinstaller

mysql - 关联表中这样的外键约束?

sql - PLS-00428:此SELECT语句中应有一个INTO子句