Flask只返回一个值

时间:2017-02-08 21:34:50

标签: python flask

我有一个从网上提取信息的功能,我可以毫无问题地将它打印到我的控制台。但是,我遇到了烧瓶应用程序将信息打印到浏览器的问题。这就是我到目前为止所拥有的:

from craigslist import CraigslistForSale
from flask import Flask, render_template
app = Flask(__name__)

@app.route('/')
def get_info():
    item = CraigslistForSale(site='southjersey', 
        category='fua', filters={'max_price':200})
    for product in item.get_results():
        a = product
        return a['name'], a['price']


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

从上面的代码中,我的浏览器只显示一个返回值的名称。例如,只有第一个返回值的a['name'],没有价格,没有其他对象。

为什么会发生这种情况(仅显示一个单独的值),以及如何解决此问题以显示整个返回对象(这是一个字典)。

1 个答案:

答案 0 :(得分:0)

查看:

from craigslist import CraigslistForSale
from flask import Flask, render_template
app = Flask(__name__)

@app.route('/')
def get_info():
    item = CraigslistForSale(site='southjersey', 
        category='fua', filters={'max_price':200})

    return render_template('index.html', items=item.get_results())


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

模板(index.html):

{% for product in items %}
    {{ product['name'] }}
    {{ product['price'] }}
    ...
{% endfor %}