2017-09-05 7 views
-1

私のフラスコのアプリはフラスコ重量のフォームを使ってデータを完全に収集しています。収集後に私は、htmlテーブルとしてオブジェクトの辞書を印刷するのに助けが必要です

@home.route('/add-new', methods=['POST', 'GET']) 
def newlist(): 
    return redirect(url_for('auth.login')) 

    form = ShoppingList() 
    if form.validate_on_submit(): 
     #insert to list 
     item_id = len(shopping_lists) + 1   
     shopping_list = ShoppingCart(session["email"], form.title.data, form.price.data, 
             form.quantity.data, item_id, form.description.data) 
     addToDic(session["email"], shopping_list) 
     result = shopping_lists 
     flash("List saved okay") 
     return render_template('home/dashboard.html', title="Dashboard", result = result) 

    #Render the dashboard template on the /dashboard route  
    return render_template('home/newlist.html',form=form, title="Add new") 

私の質問はどのようにフラスコテンプレートのテーブルに結果dicを印刷するのですか?テンプレートコードはこちら

<h3>HOME</h3> 
        <p>{{ utils.flashed_messages() }}</p>     
        <table class="table table-bordered"> 
         <thead> 
          <tr> 
          <th>Item name</th> 
          <th>price</th> 
          <th>quantity</th> 
          <th>description</th> 
          </tr> 
         </thead> 
         <tbody> 
          <tr> 

          </tr>       
         </tbody> 
         </table> 

ありがとう。手を差し伸べてください

答えて

1

実際によく書かれた包括的な知識源であり、あなたがしたいことがそこで早期に説明されているかなり簡単な作業であるので、 documentationに連絡してください。ここで

は実施例である:

app.py

from flask import Flask 
from flask import render_template 

app = Flask(__name__) 

class MyObj(object): 
    def __init__(self, name, price, quantity): 
     self.name = name 
     self.price = price 
     self.quantity = quantity 

@app.route('/') 
def index(): 
    my_objects = [ 
     MyObj('I am a super-cool object!', 1000, 1), 
     MyObj('I am a cooler object!', 2000, 2), 
     MyObj('I am the coolest object!', 3000, 3), 
    ] 
    return render_template('index.html', my_objects=my_objects) 

if __name__ == '__main__': 
    app.run(debug=True) 

index.htmlを

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <title>Title</title> 
    <style> 
    table, th, td { 
     border: 1px solid black; 
    } 
    </style> 
</head> 
<body> 
<table> 
    <thead style="border: 1px solid black;"> 
    <tr> 
     <th>Item name</th> 
     <th>price</th> 
     <th>quantity</th> 
    </tr> 
    </thead> 
    <tbody> 
    {% for ob in my_objects %} 
    <tr> 
     <td>{{ ob.name }}</td> 
     <td>{{ ob.price }}</td> 
     <td>{{ ob.quantity }}</td> 
    </tr> 
    {% endfor %} 
    </tbody> 
</table> 
</body> 
</html> 

結果のWebページ:
enter image description here

関連する問題