HTML模板不会从Flask呈现。 SystemError:错误返回,且未设置异常

时间:2019-08-23 23:32:51

标签: python html flask

这真的让我挠头。我正在使用地理位置来获取用户的坐标。然后,我将经纬度和经纬度发送给我的“ / restaurant_list”路线,并创建一个对象:“ r_list”。

@app.route('/user_location', methods=["POST"])
def user_location():
    coords = request.get_json()
    lat = str(coords['location']['lat'])
    lng = str(coords['location']['lng'])
    print(lat, lng)
    return redirect(url_for('restaurant_list_page', lat=lat, lng=lng))

到目前为止,太好了。返回结果列表,然后将其分成两半。这两个半部分及其长度将传递到“ restaurant_list.html”以在页面上进行处理。

当我运行PyCharm逐行调试它时,一切顺利,直到最后一行:


@app.route('/restaurant_list/<lat>/<lng>')
def restaurant_list_page(lat, lng):
    try:
        # Create RestaurantList object using 3 arguments
        r_list = RestaurantList(lat, lng, '33')

        # Return list of results
        results = r_list.results

        if len(results) % 2 == 0:                   # Check if list is odd or even and split in half
            top = results[:(len(results) // 2)]
            bottom = results[(len(results) // 2):]
            toplen = len(top)
            botlen = len(bottom)
            return render_template("restaurant_list.html", top=top, toplen=toplen, bot=bottom, botlen=botlen)
    except Exception:
        return render_template("main.html")


从这里开始似乎崩溃了。 html模板从不呈现。我在控制台中看到这样的错误:

File "C:\Users\Steve\AppData\Local\Programs\Python\Python37\lib\site-packages\werkzeug\urls.py", line 462, in <genexpr>
    if not rest or any(c not in s("0123456789") for c in rest):
SystemError: error return without exception set
Exception ignored in: <generator object url_parse.<locals>.<genexpr> at 0x000002ECE5F7F0C8>

我不知道这是在告诉我什么。有帮助吗?

更奇怪的是,控制台将在失败时打印GET请求,如果我将URL复制并粘贴到浏览器中,它将加载并按预期运行...

GET /restaurant_list/27.2883712/-82.4827904 HTTP/1.1" 200

0 个答案:

没有答案