在python

时间:2017-09-19 11:35:31

标签: python html json flask

我没有太多使用python的经验,我正在寻找一种干净的方式将json(这是查询的结果)发送到前端并且结构很好。

查询如下所示:

def myquery(time1, time 2):
    query_basictable = """
    Select ...
     my_data = pd.read_sql(sql=query_basictable, con=engine)

    return my_data.to_json()

现在这是我相信的地方我错了:

df_my_data=myquery(time1, time 2)
data = df_my_data

json:

data_out = {}
data_out['datas']={}
data_out['datas']['stores']= data

在前端:

<td colspan="2" class="{{ data['datas']['stores']}}">
                    <h4><b>Stores</b></h1>
                    <h3>{{ data['datas']['stores'] }}</h3>
                </td>

结果如下:

{"Store":{"0":"Store_013","1":"Store_03"}}

为了得到像这样的好事,我做错了什么:

Store_013
Store_03

1 个答案:

答案 0 :(得分:0)

jinja模板可以接收字典并使用iteritems()和for循环遍历它

<ul>
    {% for key, value in dataout.iteritems() %}
        <li>{{value}}</li>
    {% endfor %}
</ul>

此处 dataout 在视图功能中使用render_template()发送,如下所示:

@app.route('/yoururl')
def view_name():
    # Other logics here
    return render_template('some.html', dataout=dataout)

为此至少创建一个空的some.html文件(在模板目录下)