烧瓶和熊猫

时间:2018-04-09 21:30:25

标签: flask

我正在尝试在烧瓶中显示一个pandas数据框,我正在使用to_html()函数来执行此操作。但是,似乎to_html()会覆盖我的html模板。 Flask显示数据框,但不在home.html模板中。我无法弄清楚如何让数据框出现在home.html模板中。如何在home.html模板中格式化数据框?

@app.route('/')
def index():

df_holdings=pd.read_csv('Holdings.csv')
df_holdings=df_holdings[['Sector','Security','Position','% Wgt','Market 
Value','Closing Price']]
return df_holdings.to_html()
return render_template('home.html')

1 个答案:

答案 0 :(得分:2)

你有两个return语句,一个从DataFrame返回html,另一个返回模板。来电to_html不会覆盖您的home模板,而是在html到达render_template之前返回。

您需要将html从DataFrame传递到render_template,然后呈现结果

<强>的Python

@app.route('/')
def index():    
    df_holdings=pd.read_csv('Holdings.csv')
    df_holdings=df_holdings[['Sector','Security','Position','% Wgt','Market 
    Value','Closing Price']]
    return render_template('home.html', html=df_holdings.to_html())

<强> HTML

<html>
    <body>
        {{ html|safe }}
    </body>
</html>