2016-11-21 91 views
0

我試着去得到一個表顯示多條記錄與MySQL和瓶

我的代碼看起來有些內容:

@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()它說,有太多的記錄:/

我如何可以解決我的代碼實際上從表中顯示所有冠軍

回答

0

您不能從端點返回任意的東西。你需要返回類似響應的對象。這可以是字符串,Response的實例,也可以是包含響應正文,(可選)狀態代碼和標題的元組。

我猜你想用標題在JavaScript中做某些事情。您可能希望以JSON響應發送它們。爲此,請使用jsonify

from flask import jsonify 

# snip 
return jsonify(titles=[row['title'] for row in cursor.fetchall()]) 
+0

謝謝:) :) –

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)