Bluemix Python Flask应用程序使用将列表参数传递给模板列表.追加()

2024-04-28 18:10:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我将一个字符串列表从我的flask应用程序传递到html模板中,在我尝试附加列表之前,这个模板运行得非常好。我已经用一个客户端python脚本测试了append方法的用法,并且它正在工作。我很困惑为什么我追加列表会导致一个内部服务器错误。这是我的模板中使用参数的部分

<ul>
    {% for file in files %}
    <li>{{ file }}</li>
    {% endfor %}
</ul>

这是我的烧瓶程序里的路线

^{pr2}$

线文件.append('test3')导致了问题,但我不确定原因。当我注释掉这行代码时,列表将如您所期望的那样传递给模板。在

这是完整的回溯

Traceback (most recent call last):
  File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/flask/app.py", line 1836, in __call__
    return self.wsgi_app(environ, start_response)
  File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/flask/app.py", line 1820, in wsgi_app
    response = self.make_response(self.handle_exception(e))
  File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/flask/app.py", line 1403, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/flask/app.py", line 1817, in wsgi_app
    response = self.full_dispatch_request()
  File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/flask/app.py", line 1477, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/flask/app.py", line 1381, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/flask/app.py", line 1475, in full_dispatch_request
    rv = self.dispatch_request()
  File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/flask/app.py", line 1461, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/home/vcap/app/server.py", line 93, in main
    for container in conn.get_account()[1]:
  File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/swiftclient/client.py", line 1615, in get_account
    full_listing=full_listing)
  File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/swiftclient/client.py", line 1553, in _retry
    self.url, self.token = self.get_auth()
  File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/swiftclient/client.py", line 1507, in get_auth
    timeout=self.timeout)
  File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/swiftclient/client.py", line 617, in get_auth
    auth_version=auth_version)
  File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/swiftclient/client.py", line 517, in get_auth_keystone
    ksclient, exceptions = _import_keystone_client(auth_version)
  File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/swiftclient/client.py", line 502, in _import_keystone_client
    variables to be set or overridden with -A, -U, or -K.''')
ClientException: 
Auth versions 2.0 and 3 require python-keystoneclient, install it or use Auth
version 1.0 which requires ST_AUTH, ST_USER, and ST_KEY environment
variables to be set or overridden with -A, -U, or -K.

似乎附加不是导致错误,而是暴露了一个错误。整理好后我会更新。在


Tags: inpyselfclientauthappflaskhome
1条回答
网友
1楼 · 发布于 2024-04-28 18:10:14

正如回溯底部所示,我在应用程序需求和导入语句中都缺少python keysteneclient。

我通过添加

python-keystoneclient

给我的要求.txt(这是python heroku构建包的需求文件),然后允许我将导入添加到我的Flask应用程序中

^{pr2}$

相关问题 更多 >