2017-04-09 63 views
1

显示从MySQL查询数据我是比较新的的Python /瓶,我有一些数据库的东西的麻烦。Python的:如何在一个表上的烧瓶中应用

我能够从插入使用wtforms数据库用户连接到MySQL数据库在不同的功能,并得到表单输入。现在我想使用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代码(不知道是否尝试/除非是必要的):

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> 

回答

0

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

+0

return语句,其实是害我的问题。还有一个更大的问题是函数根本没有执行,因为我之前有另一个函数使用'@ app.route('/ dashboard /')',我现在认为它是不允许的。解决方案是结合这两个功能。 – wjh18