python - Rendering JSON output on Flask Bootstrap Page -


i trying display json file flask html page.

flask

@app.route("/analysis") def analysis():     data = pd.read_csv('static/uploads/' + global_file.filename)     temp_json = data.to_json(orient='records')     json_df = json.loads(temp_json)     list = json_df     return render_template('results.html', summary = json.dumps(list)) 

html

<div class="results">     <table>         {% key in summary %}             {{ key.name }}         {% endfor %}     </table>   </div> 

json

name    age class   marks       12     6    32 b       13     6    32 c       14     6    43 d       12     6    54 e       13     6    23 

i getting blank page ouptut. want display pretty table on page.

the reason happens convert json object string using json.dumps iterate through string (character character) , try access name attribute. if leave out .name, indeed see every character printed out after eachother.

to fix should provide template actual object: list of dicts. so:

@app.route("/analysis") def analysis():     data = pd.read_csv('static/uploads/' + global_file.filename)     temp_json = data.to_json(orient='records')     json_df = json.loads(temp_json)     return render_template('results.html', summary = json_df) 

then still there won't actual table, because in template there no tr or td elements. if fix that:

<div class="results">      <table>          {% item in summary %}              <tr><td>              {{ item['name'] }}              </td></tr>          {% endfor %}      </table> </div> 

you see actual table.

edit: conversions inside of analyse method bit superfluous, maybe shortened code post here?


Comments

Popular posts from this blog

Is there a better way to structure post methods in Class Based Views -

performance - Why is XCHG reg, reg a 3 micro-op instruction on modern Intel architectures? -

jquery - Responsive Navbar with Sub Navbar -