0

我试图从表格中获取一些内容

我的代码看起来像:

@app.route('/')
def home():
    cursor = mysql.connect().cursor()
    cursor.execute("SELECT titlle from cards ORDER BY id desc")
    data = cursor.fetchone()
    return data

但它只显示一个,因为好吧......我正在使用 fetchone() 但是当我使用 fetchall() 时它说记录太多:/

如何修复我的代码以实际显示表卡中的所有标题

4

2 回答 2

0

您不能从端点返回任意东西。您需要返回类似响应的对象。这可以是字符串、 的实例Response或包含响应正文、(可选)状态代码和标头的元组。

我猜你想用这些标题在 JavaScript 中做一些事情。您可能希望以 JSON 响应的形式发送它们。为此,使用jsonify.

from flask import jsonify

# snip
return jsonify(titles=[row['title'] for row in cursor.fetchall()])
于 2016-11-21T04:54:24.937 回答
0

这就是我在测试程序中连接到 mariadb 或 mysql 的操作,它正在工作:

@main.route('/mariadb')
def mariab():
    print current_app.config['MYSQL_USER']
    print current_app.config['MYSQL_DB']
    cur = mysql.connection.cursor()
    cur.execute('SELECT titlle from cards ORDER BY id desc')
    entries = cur.fetchall()
    print entries
    return render_template('mariadb.html',
                           database=current_app.config['MYSQL_DB'],
                           user=current_app.config['MYSQL_USER'],
                           entries=entries)
于 2016-11-22T07:04:57.113 回答